你如何在(字符组)中匹配^(行首)和$(行尾[])?
简单的例子
haystack字符串: zazty
规则:
传球:匹配前两个"z"
一个可行的正则表达式是:
(?:^|[aAbB])([zZyY])
但我一直认为它会更清晰,类似于字符组内部的开头/结尾
[^aAbB]([zZyY])
(在该示例中假设^线的开头,而不是它的真实位置,字符组为负)
注意:使用python.但是知道在bash和vim上也会很好.
更新:再次阅读它所说的一组字符的手册,一切都失去了它的特殊含义,除了字符类(例如\w)
在字符类列表中,有\A一行的开头,但这不起作用[\AaAbB]([zZyY])
知道为什么吗?
mat*_*fee 28
你不能匹配一个^或$一个,[]因为在一个字符类中唯一具有特殊含义的字符是^(如"除了"之外)和-(如"范围")(以及字符类).\A并且\Z不要算作角色类.
这适用于正则表达式的所有(标准)风格,所以你坚持(^|[stuff])和($|[stuff])(实际上并不是那么糟糕).
| 归档时间: |
|
| 查看次数: |
18257 次 |
| 最近记录: |