我有以下使用正则表达式的配置,基本上它说处理除ComponentA之外的所有文件。

我需要更改属性regex,以便它可以另外排除ComponentB

如何更改正则表达式?

   {
       regex: /^((?!.*?ComponentA).)*$/
    }

最佳答案

您当前的正则表达式:

/^((?!.*?ComponentA).)*$/

断言在匹配每个字符之前,前方不存在ComponentA。换句话说,它对每个字符执行此声明,因此对于较大的字符串,它将执行得非常慢。

最好将其更改为这样的一次断言:
/^(?!.*ComponentA).*$/

由于您还希望禁止ComponentB,因此只需在负的超前表达式中使用替代:
/^(?!.*(?:ComponentA|ComponentB)).+$/

关于javascript - 更改正则表达式,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/49654128/

10-12 12:35