选项模式
假如我们不仅想知道文本中是否包含数字,还想知道数字之后是否跟着一个单词(pig、cow或chicken)或其复数形式。
那么我们可以编写三个正则表达式并轮流测试,但还有一种更好的方式。管道符号(|)表示从其左侧的模式和右侧的模式任意选择一个进行匹配。因此代码如下所示。
let animalCount = /\b\d+ (pig|cow|chicken)s?\b/;console.log(animalCount.test("15 pigs"));// → trueconsole.log(animalCount.test("15 pigchickens"));// → false
小括号可用于限制管道符号选择的模式范围,而且你可以连续使用多个管道符号,表示从多于两个模式中选择一个备选项进行匹配。
