正则表达式结束

Bra*_*Box 7 regex

在过去的几个小时里,我一直在搜索网络,试图弄清楚为什么我的一位同事坚持(?!.)在他的正则表达式中使用最后一个字符而不是通常的$.

我见过的一些正则表达式^.*.txt(?!.)是以平时开头的^,但不以$.我一直无法找到任何明确或时间有效的理由,任何利弊或差异?

Ale*_*rov 4

$ 可能匹配行尾而不是输入尾(这取决于使用的修饰符)。或许这就是原因。

在我看来,匹配输入结尾的最佳方法是\z- 这意味着输入完全结束,无论修饰符如何。大多数(如果不是全部)正则表达式实现都支持它。