[英]Regular expression for three word seperated by two comma
需要匹配下面给出的所有方案
最少一个字,不要用逗号
最多三个单词,以两个“单个空格+逗号”(,)分隔
每个单词不能有空格,但允许所有特殊字符
sometext, sometext, sometext-->valid
sometext-->valid
sometext, sometext-->valid
sometext, sometext, sometext, -->invalid
sometext, sometext, sometext, sometext -->invalid
sometext, -->invalid
sometext sometext, sometext sometext -->invalid
尝试以下表达式,但无法验证无效方案
[a-zA-Z]*(,[a-zA-Z]*){0,2}
谢谢
尝试这个:
/^[^ ,](,\s[^ ,]){0,2}$/
没有正则表达式只是为了好玩(我不知道它是否比正则表达式快)
var examples = ['sometext, sometext, sometext',
'sometext',
'sometext, sometext',
'sometext, sometext, sometext,',
'sometext, sometext, sometext, sometext',
'sometext,',
'sometext sometext, sometext sometext'];
examples.forEach(function(example){
var splitResult = example.split(', ');
if (splitResult.length < 4 &&
splitResult.indexOf('') === -1 &&
splitResult.filter(function(x){return x.split(' ').length > 1}).length === 0 &&
splitResult.filter(function(x){return x.substr(-1) === ','}).length === 0)
console.log(example + ': valid');
else
console.log(example + ': not valid');
});
检查此正则表达式:
^([a-z]+,\s{1}){0,2}[a-z]+$
它将与您提到的示例文本(包括空格)完全匹配。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.