您好我正在尝试使用正则表达式将“/”替换为“/ n:”。我遇到的问题是我希望这种情况发生,除非“/”之后是“@”所以“/@".
我有一个像这样的模式“// [^ @] /”,虽然这会得到“/”,而忽略任何“/ @”,它也匹配下面的字母。我只需要匹配“/”。任何人都可以帮助这个感谢。
编辑:添加了示例字符串
/module/y-version/@value
答案 0 :(得分:3)
您可以使用negative lookahead:
'~/(?!@)~'
请参阅regex demo
[^@]
是negated character class,是消费模式,而前瞻只会检查字符串中当前位置右侧的文字,并且如果前瞻模式找到匹配,则会使匹配失败。