【问题标题】:Why is this regex matching only once no matter what I execute it against? [duplicate]为什么无论我执行什么,这个正则表达式只匹配一次? [复制]
【发布时间】:2017-01-11 15:20:24
【问题描述】:

我有这个正则表达式:

/foo|bar\/baz/

由于某种原因,它只匹配包含多次出现的foobar/baz 的字符串(例如foo the bar/baz)。为什么?

【问题讨论】:

    标签: regex language-agnostic


    【解决方案1】:

    它只匹配所有内容一次,因为您没有启用 全局搜索 - 该功能可防止正则表达式引擎在第一次匹配时返回。您可以使用g 标志启用它,如下所示:

    /foo|bar\/baz/g
    

    上述正则表达式将匹配foo the bar/baz 两次,正如人们一开始所期望的那样。

    【讨论】:

      猜你喜欢
      • 2020-01-25
      • 2016-03-14
      • 2018-08-24
      • 2018-06-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多