Javascript 优化:(\\[^$&;\\]\[^$&;\\]]*

Javascript 优化:(\\[^$&;\\]\[^$&;\\]]*,javascript,regex,Javascript,Regex,我有一个长正则表达式(JavaScript),它包含以下构造: ((?:\\[^$&\\])|(?:[^$&\\]))* 正则表达式说: 匹配任何不包含符号的字符串$&和\ 如果用于转义,则允许使用符号\。但前提是,它不能逃脱一个被禁止的符号 这里有一个简单的匹配示例: 此&是一个文本\n包含新行$和\$禁止\符号 我想知道是否有可能优化这个正则表达式。这只是一个小例子,我使用的实际正则表达式更大,因为我必须写两次不同的符号。为什么不只写\\?[^$&\\]?可选\,后跟否定组

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

((?:\\[^$&\\])|(?:[^$&\\]))*
正则表达式说:

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

如果用于转义,则允许使用符号
\
。但前提是,它不能逃脱一个被禁止的符号

这里有一个简单的匹配示例:

&
是一个文本\n包含新行
$
\$
禁止
\
符号


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

为什么不只写
\\?[^$&\\]
?可选
\
,后跟否定组

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