我需要一个逗号分隔字符串的正则表达式。
ex:“Test1,Test2,Test3,Test1”
基本上:
rgx.test("Test1, Test2, Test3, Test1")
由于存在重复,应该返回false。
任何帮助?
答案 0 :(得分:2)
如果您不介意解决方案是函数而不是RegEx
,那么这是一个可以正常工作的代码。
function isSetString(str, separator) {
//TODO input validation
var arr = str && str.split(separator || ","),
l = arr && arr.length,
o = {};
for (var i = 0; i < l; i++) {
if (o.hasOwnProperty( arr[i] )) {
return false;
} else {
o[ arr[i] ] = true;
}
}
return true;
}
答案 1 :(得分:0)
String s = "test1, test2,test1, ....";
String parts[] = s.split(",");
然后你的所有代币都在parts[]
中,你可以遍历它以查看是否有任何匹配。使用嵌套for循环。一个用于遍历每个,另一个用于与数组中前面的那些进行比较
答案 2 :(得分:0)