“^”符号用于表示匹配字符串的开始,“$”符号用于表示匹配字符串的结束,“\b”符号用于表示单词的边界。这里的边界是指单词两侧是空格或标点符号。例如“ abc?”可以认为abc两侧都有边界,左侧是空格,右侧是问号(?),但“ abcx”就不能认为abc右侧有边界,因为“x”和“abc”都可以认为是单词。
下面的例子演示了如何匹配字符串的起始和结束,以及单词边界的匹配。
import re
# 匹配成功
m = re.search('^The', 'The end.')
print(m)
if m is not None:
print(m.group()) # 运行结果:The
# The在匹配字符串的最后,不匹配
m = re.search('^The', 'end. The')
print(m)
if m is not None:
print(m.group())
# 匹配成功
m = re.search('The$', 'end. The')
print(m)
if m is not None:
print(m.group()) # 运行结果:The
m = re.search('The$', 'The end.