正则表达式中的^

  • 正则表达式中的^有两种含义:
    • 1.匹配字符串的开头
    • 2.表示取反

正则表达式中的^有两种含义:

1.匹配字符串的开头

一个字符串必须以某个字符开头

In [12]: re.match(r"^m","mini_frame:application").group()
Out[12]: 'm'
In [16]: re.match(r"^mi","mini_frame:application").group()
Out[16]: 'mi'

如果无法匹配,就会报错:

In [17]: re.match(r"^i","mini_frame:application").group()
---------------------------------------------------------------------------
AttributeError                            Traceback (most recent call last)
<ipython-input-17-79622e38fd6f> in <module>
----> 1 re.match(r"^i","mini_frame:application").group()

AttributeError: 'NoneType' object has no attribute 'group'

2.表示取反

和[]一起使用

In [14]: re.match(r"[^a]","mini_frame:application").group()
Out[14]: 'm'

除a以外的第一个字符为’m‘

如果加上+

In [15]: re.match(r"[^a]+","mini_frame:application").group()
Out[15]: 'mini_fr'

从开头到第一个a的字符串为 ‘mini_fr’

In [19]: re.match(r"[^:]+","mini_frame:application").group()
Out[19]: 'mini_frame'

从开头到第一个":"的字符串为 ‘mini_frame’

更多推荐

正则表达式中的^