JavaScript - 字符串中的搜索模式

时间:2016-12-18 11:30:28

标签: javascript regex

你好我想知道搜索模式最好的方法是什么 AB除了AA之外B应该是BADSDFSDAB'应该只有false?示例:''BBBSDSSDSDNSSS'应返回B,其中true应返回true。

因此,对于我的字符串中的每个A,如果前面没有const load = () => { const amount = document.getElementById('number') amount.addEventListener('input', handleNumberChange) } document.addEventListener("DOMContentLoaded", load) ,我想返回{{1}}。

2 个答案:

答案 0 :(得分:2)

  

其中A应该是除A ...之外的任何一个

这就是[^A]

  

和B应该只是B

那是B

所以:

if (/[^A]B/.test(str))) {
    // Yes, it has a match
} else {
    // No, it doesn't
}

直播示例:



test("ADSDFSDAB", false);
test("BBBSDSSDSDNSSS", true);

function test(str, expect) {
  var result = /[^A]B/.test(str);
  var good = !result == !expect;
  console.log("'" + str + "': " + result + (good ? " - Pass" : " - FAIL"));
}




答案 1 :(得分:1)

根据我的理解,您希望匹配B,而不是A。你可以使用像:

这样的模式
[^A]B

但是,我建议您在原始字符串中搜索子字符串AB的存在并检查结果。

originalString.indexOf('AB') !== -1