我在质疑为什么我从这段代码中得到了以下输出:
'Willie'.split(/[i-l]{1}/); // [ 'W', '', '', '', 'e' ]
我期待得到 ['W', 'e']
。我不确定为什么要在阵列中插入孔。
最佳答案
您正在拆分单个字母,因此每个 illi
都被视为分隔符,字符串拆分如下:
w i l l i e
# w "" "" "" e
# if there's no content between separators, an empty string is in place
# or what would you get with a csv string w,,,,e split on comma ?
尝试使用贪婪量词 +
,它会尽可能匹配模式,因此 illi
被视为一个分隔符:
console.log('Willie'.split(/[i-l]+/));
关于javascript - 简单的 JavaScript 拆分函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45303689/