要想搜索多个字符串,如搜索aa、bb和cc,最简单的方法是在正则表达式中使用择一匹配符号(|)。
择一匹配符号和逻辑或类似,只要满足任何一个,就算匹配成功。
#coding=utf-8
import re
pattern='aa|bb|cc'
s='aa' #结果:'aa'
s='bb' #结果:'bb'
s='cc' #结果:'cc'
o=re.match(pattern,s)
print(o.group())
s='my name is cc'
o=re.match(pattern,s)
print(o.group()) #结果:None
o=re.search(pattern,s)
print(o.group()) #结果:'cc'
举例2、
#匹配0到100数字:(拆分成0-99|100)
pattern=r'[1-9]?\d$|100$' #第一位1到9,可有可无,第二位\d代表任意数字
#pattern=r'[0-9]\d?|100' 这种写法有问题:会匹配出09这种数字不符合实际
s='0' #结果:'0'
s='10' #结果:'10'
s='99' #结果:'99'
s='100' #结果:'99'
s='101' #结果:None
o=re.match(pattern,s)
print(o.group())
匹配多个字符串
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
推荐阅读更多精彩内容
- 这么简单的使用,每次用的时候都想不起来啊,是不是要拖出去打死? 1、截取字符串 2、匹配字符串 3、分隔字符串 4...