正则表达式与相似的单词完全匹配

时间:2013-07-07 05:50:36

标签: javascript regex

我有一个模式:

var patt = /((name)|(names)*)/g;

我有一个匹配的字符串:

var word = "namesnames";

字是按照模式逻辑,但word.match(patt)返回:

["name", "", "name", "", ""]

哪个错了! 我想从匹配中得到“namesnames”的结果, 请帮我。 感谢。

2 个答案:

答案 0 :(得分:0)

如果我理解你想要什么,你可以更简单:

var patt = /(names?)+/g;

答案 1 :(得分:0)

问题是,当你应该完成(names)*,意味着“名字”或“名字”1次或更多次时,你使用((name)(?:s))+,意思是“名字”0次或更多次。