我有一个字符串如下
纽约,纽约,美国
我需要一个正则表达式以太至少1个逗号或至少2个逗号 要么 任意三个单词,中间有两个逗号。
答案 0 :(得分:1)
^[^,\n]+,(?:[^,\n]+,?)*$
如果您只需要*
个单词,则可以使用此{1,2}
3
。请参阅演示。
^[^,\n]+,(?:[^,\n]+,?){0,2}$
https://regex101.com/r/bW3aR1/11
var re = /^[^,\n]+(?:,[^,\n]+)*$/gm;
var str = 'New York, New York, United States\nNew York, New York\nNew York\nNew York, New York, United States,';
var m;
while ((m = re.exec(str)) != null) {
if (m.index === re.lastIndex) {
re.lastIndex++;
}
// View your result using the m-variable.
// eg m[0] etc.
}