不知道你会不会出现这种错误,
print(re.findall('er','never'))
输出结果却为空?
如果你出现这种问题,说明你没有转义,试着输入以下语句
print(re.findall(r'er','never'))
,B是单词边界,不匹配任何实际字符,所以是看不到的;B是的非(补)。
:表示字母数字与非字母数字的边界, 非字母数字与字母数字的边界。
B:表示字母数字与(非非)字母数字的边界,非字母数字与非字母数字的边界。
实例
猜测一下下面的结果,具体答案及详解请[移步][https://blog.csdn.net/uvyoaa/article/details/80854459]
import re
re.split(r'123','==123!! abc123. 123. 123abc. 123')
re.split(r'123','==123!! abc123. 123 abc 123')
re.split(r'123','123 ==123!! abc123.123.123abc.123')
re.split(r'123=','==123!! abc123,123,123=abc,123')
re.split(r'123a','==123!! abc123,123,123a
bc,123')
re.split(r'123=','==123!! abc123,123,123==abc,123')
# B
re.split(r'pycB','1pycthon py5 2pyc342 pyc1py2pyr pyp3 3pyc# pyc')
re.split(r'py=B','1py=cthon py5 2py=342 py==1py2py4 pyp3 3py- pyabc')
re.split(r'123=B','==123!! abc123,123,123==abc,123')