gpt4 book ai didi

php - 正则表达式 (?<!-) 是什么意思

转载 作者:可可西里 更新时间:2023-10-31 23:05:10 24 4
gpt4 key购买 nike

我试图理解一段代码并遇到了 PHP 的 preg_replace 函数中使用的这个正则表达式。

'/(?<!-)color[^{:]*:[^{#]*$/i'

这个位... (?<!-)没有出现在我的任何 reg-exp 手册中。请问有人知道这是什么意思吗? (谷歌不返回任何东西——我认为符号在谷歌中不起作用。)

最佳答案

?<!在括号组的开头是 negative lookbehind .它断言 color 这个词(严格来说,引擎中的 c)前面没有 -。性格。

因此,对于更具体的示例,它将匹配 color在字符串中:

color
+color
someTextColor

但它会在类似 -color 的情况下失败或 background-color .另请注意,引擎在技术上不会“匹配”c 之前的内容。 , 它只是断言它不是连字符。根据上下文,这可能是一个重要的区别(illustrated on Rubular with a trivial example;请注意,匹配最后一个字符串中的 b,而不是前面的字母)。

关于php - 正则表达式 (?&lt;!-) 是什么意思,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10922458/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com