Js正则表达式测试除字符串

Js regex test except string

本文关键字:字符串 测试 正则表达式 Js      更新时间:2023-09-26

我有这个列表:

tests.skills
tests.instructions
tests.something

我想测试给定的字符串是否包括最后两个,但不包括第一个,所以我试了这个:

 var str = 'tests.instructions';
 if( /tests'.[^skills].+/ig.test(str) ) {
      console.log(1);
  }

但是它不工作,我怎么测试这个?

/tests'.(?!skills).+/

集合否定[^x]将尝试匹配非x的字符。[^skills]的实际含义是匹配单个字符,而不是skills

相反,一个负向前看的(?!sequence)将完成这项工作。

您也可以尝试:

tests'.(?:instructions|something)

表示:搜索tests.文本,后面跟着instructions something