【发布时间】:2014-07-20 20:03:37
【问题描述】:
我有一个问题。我正在为文本匹配续和排序匹配计数生成一个小 scipt。 click to see jsfiddle live example
我的示例脚本:
var testtext1 = "apple banana and kiwi pineapple juice";
var testtext2 = "need apple banana pineapple milkshake";
var testtext3 = "apple pineapple lower prices";
var testtext4 = "only apple banana kiwi pineapple lovers";
var testtext5 = "kiwi pineapple apple banana sales";
alert(testtext1.match(/apple banana kiwi|apple banana|apple|banana|kiwi/gi).length); //3 matches
alert(testtext2.match(/apple banana kiwi|apple banana|apple|banana|kiwi/gi).length); //2 m
alert(testtext3.match(/apple banana kiwi|apple banana|apple|banana|kiwi/gi).length); //2 m
alert(testtext4.match(/apple banana kiwi|apple banana|apple|banana|kiwi/gi).length); //2 m
alert(testtext5.match(/apple banana kiwi|apple banana|apple|banana|kiwi/gi).length); //3 matches
text1= 只有 3 个匹配项,为什么?看正则表达式
苹果香蕉猕猴桃或苹果香蕉或苹果或香蕉或猕猴桃
苹果香蕉猕猴桃不匹配0
苹果香蕉YES匹配1
苹果YES匹配2
香蕉YES匹配3
猕猴桃YES匹配4
好吧,为什么返回 3 个匹配而不是 4 个匹配?还有其他例子吗?
【问题讨论】:
标签: javascript regex match whitespace