为什么这个正则表达式只匹配一次,无论我执行它什么?

时间:2016-09-03 19:17:48

标签: regex language-agnostic

我有这个正则表达式:

/foo|bar\/baz/

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

1 个答案:

答案 0 :(得分:1)

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

/foo|bar\/baz/g

上述正则表达式将匹配foo the bar/baz两次,正如人们首先想到的那样。