2020年1月2日 MRKJ page150 re模板

import re
pattern=r'mr\w+'  #模式字符串,前面加个r做成原生字符,这样就不用加斜杠做转义
string2='MR_SHOP mr_shop'#要进行匹配的字符串
M=re.match(pattern,string2)
# flags 可选参数,表示标志位的,用于控制匹配方式的
msg='\tA 只进行ASCII匹配,也就是不匹配汉字\n' \
    '\tI 不区分大小写\n' \
    '\tM 将^ 和 $ 用于整个字符串的开始和结尾的每一个行\n' \
    '\tS 用(.) 匹配所有字符,包括换行\n' \
    '\tX 忽略模式字符串中未转义的空格和注释'
print('\n**************\n',msg,'\n***************\n')
N=re.match(pattern,string2,re.I)
print(M,'\n',N)
print('start位置:',N.start(),'\nend位置:',N.end())
print('匹配位置的元祖:',N.span())
print('要匹配的字符串:',N.string)
print('匹配数据:',N.group())


print(N.string[0:7])
print(string2[N.start():N.end()])
print(string2[N.span()[0]:N.span()[1]])

》》》》》

**************
A 只进行ASCII匹配,也就是不匹配汉字
I 不区分大小写
M 将^ 和 $ 用于整个字符串的开始和结尾的每一个行
S 用(.) 匹配所有字符,包括换行
X 忽略模式字符串中未转义的空格和注释
***************

None
<re.Match object; span=(0, 7), match='MR_SHOP'>
start位置: 0
end位置: 7
匹配位置的元祖: (0, 7)
要匹配的字符串: MR_SHOP mr_shop
匹配数据: MR_SHOP
MR_SHOP
MR_SHOP
MR_SHOP

上一篇:正则表达式 3


下一篇:ubuntu---shell脚本:if - then 语句 和 test命令