1 re.compile() 的解释:
python 正则表达式 re.compile() 将正则表达式编译成一个Pattern规则对象,单独使用compile 没有意义,他生成的是一个规则,需要match ,search 等去使用这个规则
比如使用正则表达式去掉字符串里面的重复的元素
使用的方法就是贪婪模式了,尽可能少的去匹配内容,如果想对贪婪模式与非贪婪模式进一步的了解点击查看我的另一篇文章
2 demo 参考
2.1 去掉字符串里面的重复的元素
下面开始写demo 很简单如下匹配出abc
import re # 导入re 模块
str_content = "abcabcabcabcabcabc" # 要匹配的内容, 对应match 里面的string
str_pattern = re.compile("a.*?c")
re_content = str_pattern.match(str_content)
print(re_content.group())
打印结果如下
这里使用用了 compile 和 match 方法,
2.2 判断字符串是否一数字结尾
str_content = "hello886"
str_pattern = re.compile(r".*[0-9]$")
if str_pattern.match(str_content):
print("是以数字结尾,内容为:%s" % str_content)
else:
print("不是以数字结尾,内容为:%s" % str_content)
这里元字符使用了
. 匹配除换行符以外的任意字符
* 重复零次或更多次
[] 匹配[]中列举的字符
$ 匹配字符串的结束
如果对元字符不了解,可以看我的另外一篇文档 点击查看python 元字符
打印结果如下