优化:(\\ [^ $& \\] | [^ $& \\])*

时间:2014-05-10 19:02:53

标签: javascript regex

我有一个很长的正则表达式(JavaScript),它包含以下结构:

((?:\\[^$&\\])|(?:[^$&\\]))*

正则表达式说:

匹配任何不包含符号$ &\

的字符串

如果符号\用于转义,则允许使用符号this。但只是,如果它没有逃脱禁止的符号之一。

以下是一个简单的匹配示例:

IsAText\nWithNewLines& And $ Forbidden \ $ Symbols \\ {{1}}

我想知道是否可以优化这个正则表达式。这只是一个小例子,我使用的实际正则表达式更大,因为我必须写两次不同的符号。

1 个答案:

答案 0 :(得分:0)

为什么不只是\\?[^$&\\]?可选\,然后是您的否定小组。

这会使整个事情成为(\\?[^$&\\])*