Skip to content

多选分支

一个模式可以实现横向和纵向模糊匹配,而多选分支可以支持多个子模式任选其一

具体形式如下(p1|p2|p3)其中p1,p2,p3 是子模式,用|隔开,表示其中任何之一

例如要匹配字符串goodnice可以使用/good|nice/

可视化形式如下:

测试如下:

js

var regex = /good|nice/g;

var string = = "good idea, nice try.";

console.log(string.match(regex))

// ["good", "nice"]

分支惰性

在多选分支中,各个子模式是按顺序进行尝试的,也就是说,如果第一个子模式匹配成功,那么后面的子模式将不会被尝试

比如:

js
var regex = /good|goodbye/g;
var string = "goodbye";
console.log(string.match(regex));
// ["good"]
  • 而把正则改成 /goodbye|good/结果是
js
var regex = /goodbye|good/g;
var string = "goodbye";
console.log(string.match(regex));
// ["goodbye"]