【问题标题】:js regex to find multiple substrings in stringjs正则表达式在字符串中查找多个子字符串
【发布时间】:2017-07-27 09:07:22
【问题描述】:

我想知道某个字符串中是否存在某些子字符串。

我试过这个:

x = "AAABBBCCC"
x.match(/(AAA|CCC)/)

但是这会导致:Array [ "AAA", "AAA" ]

我想确切知道存在哪些子字符串(例如Array [ "AAA", "CCC" ]

这可能吗?

【问题讨论】:

    标签: javascript regex


    【解决方案1】:

    现在您只有一个具有一个值的捕获组,如果找到它就会返回。

    如果您将全局标志添加到正则表达式,它将返回所有结果

    x.match(/(AAA|CCC)/g)
    

    -> [“AAA”,“CCC”]

    【讨论】:

      【解决方案2】:

      检查全局匹配,否则会在找到第一个时中断

      x = "AAABBBCCC"
      x.match(/(AAA|CCC)/g)
      

      【讨论】:

        【解决方案3】:

        这可以在您的模式中使用 g 全局标志。像这样:

        x.match(/(AAA|CCC)/g);
        

        这将返回["AAA", "CCC"]。在计算表达式和作为文档时,我真的很喜欢使用RegExr

        【讨论】:

          【解决方案4】:

          var regEx = new RegExp('(AAA|CCC)','g');
          var sample_string="AAABBBCCC";
          var result = sample_string.match(regEx);
          document.getElementById("demo").innerHTML = result;
          <p id="demo"></p>

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 2018-05-24
            • 2017-07-04
            • 1970-01-01
            • 1970-01-01
            • 2016-05-16
            • 2012-05-12
            • 1970-01-01
            相关资源
            最近更新 更多