【发布时间】:2021-07-03 23:13:03
【问题描述】:
我在这里创建了 2 个函数,它们几乎 100% 相同。唯一的区别是函数的正则表达式字符集的顺序不同。为什么这两个函数会产生不同的输出?
// FUNCTION 1:
function splitify(str) {
let divs= str.split(/[\." "-,]/) //order different [inside]
return divs
}
console.log(splitify("Hello World,I-am code"));
//OUTPUT: ["Hello", "World", "I-am", "code"]
//FUNCTION 2
function splitify2(str) {
let divs = str.split(/[-" ",\.]/); //order different [inside]
return divs;
}
console.log(splitify2('Hello World,I-am code'));
//OUTPUT: ['Hello', 'World', 'I', 'am', 'code'];
【问题讨论】:
-
请注意
[\." "-,](或简化的[. "-,])匹配任何"#$%&'()*+,.或空格,而[-" ",\.](或简化的[-" ,.])匹配任何",-.或空格。
标签: javascript regex string