Isa*_*aac 6 javascript regex null split
是否有可能使JavaScript正则表达式拒绝空匹配?
可以告诉String.split()方法拒绝空值吗?
console.log("abcccab".split("c"));
//result: ["ab", "", "", "ab"]
//desired result: ["ab", "ab"]
Run Code Online (Sandbox Code Playgroud)
-
当我测试这个时,我偶然发现了事故的部分答案:
console.log("abccacaab".split(/c+/));
//returns: ["ab", "a", "aab"]
Run Code Online (Sandbox Code Playgroud)
但是,当比赛开始时会出现问题:
console.log("abccacaab".split(/a+/));
//returns: ["", "bcc", "c", "b"]
// ^^
Run Code Online (Sandbox Code Playgroud)
有一个干净的答案吗?或者我们只需处理它?
小智 26
这不是一个正则表达式的解决方案,但过滤器可以快速完成它.
"abcccab".split("c").filter(Boolean);
Run Code Online (Sandbox Code Playgroud)
这将过滤掉falsey ""值.