【发布时间】:2012-07-11 07:21:59
【问题描述】:
我想创建一个否定字符类来匹配像这样的方括号标签[方括号标签]。问题是,] 字符结束了字符类!
我试过了
\[[^\]]+]
但是当我运行它时出现语法错误。 (这是在查找和替换正则表达式引擎中,它与标准 .NET 引擎仅供参考)。
【问题讨论】:
-
写成
\[[^(])]+]这样行吗?
我想创建一个否定字符类来匹配像这样的方括号标签[方括号标签]。问题是,] 字符结束了字符类!
我试过了
\[[^\]]+]
但是当我运行它时出现语法错误。 (这是在查找和替换正则表达式引擎中,它与标准 .NET 引擎仅供参考)。
【问题讨论】:
\[[^(])]+]这样行吗?
你忘了转义最后的结束括号:
\[[^\]]+\]
【讨论】:
msdn 中的第一个示例使用\\ 转义\,然后转义.。所以你应该做类似\\[[^\\]]+\\] 的事情,也正如 Damien_The_Unbeliever 所说的那样,你还没有关闭最后一个括号。
【讨论】:
我绝对希望用“\”转义,但它对我不起作用(grep@MacOS),但这个:
[^]]
做了这项工作。
只需将 ] 作为类中的第一个字符。
我实际上使用了类似的东西:
[^]?[]
【讨论】: