查找所有 PHP 短标签

2022-08-30 20:14:11

我需要找到所有短的PHP标签。

它的正则表达式,但我不能在vim中使用它。<\?(?!php)

如何将其“转换”为vim?


答案 1

对我来说,这个工作正常:

<\?(?!php|xml)

答案 2

在 vim 中查找短标签的最佳方法是查找所有未后跟的短标签:<?p

/<?[^p]

您的正则表达式在 vim 中失败的原因是因为找到文字问号,而它是一个量词; 在 vim 中将尝试查找 0 或 1 个小于号。这与大多数正则表达式引擎中的预期相反。/?\?/<\?


如果要匹配紧跟在新行后面的短标记,则不能使用 ,这需要有一些不匹配的东西不是 .在这种情况下,您可以将“非 p 或行尾”与[^p]p

/<?\($\|[^p]\)

推荐