匹配方括号中包含的字符串不包含$

时间:2018-01-22 14:01:11

标签: php regex

我正在尝试匹配括号内的标记,但不包含美元符号,例如[title]

我试过了:

\[[^\$]\]

\[[^\$]+\]

但它没有正确匹配。关于这个的任何提示?

1 个答案:

答案 0 :(得分:1)

您需要在否定字符类中包含],以便贪婪匹配按预期执行:

/\[[^\$\]]+\]/

要删除不必要的转义,请使用:

/\[[^$\]]+]]/

模式演示:https://regex101.com/r/ePmTRm/1/

*注意,您不应该使用正则表达式来处理html。