在 JavaScript 中按特殊字符拆分字符串

按特殊字符拆分字符串

Split a String by Special Characters in JavaScript

要按特殊字符拆分字符串,请对split()字符串调用该方法,将匹配任何特殊字符的正则表达式作为参数传递给它。该方法将在每次出现特殊字符时拆分字符串并返回包含结果的数组。

索引.js
const str = 'a.b-c=d/e_f'; const result = str.split(/[.\-=/_]/); // 👇️ ['a', 'b', 'c', 'd' ,'e' ,'f'] console.log(result);
如果您正在寻找匹配所有特殊字符的正则表达式,请向下滚动到最后一个示例。

我们传递给
split
方法的唯一参数是一个正则表达式——一个我们想要拆分字符串的分隔符。

正斜杠/ /标记正则表达式的开始和结束。

方括号[]称为字符类,匹配方括号之间的任何字符。您可以根据需要调整字符。

示例中的正则表达式匹配点、连字符、等号、正斜杠和下划线。

有些字符,例如连字符或反斜杠必须转义,因为它们具有特殊含义。
索引.js
const str = 'z=a-b\\c'; const result = str.split(/[=\-\\]/); // 👇️ ['z', 'a', 'b', 'c'] console.log(result);

如果还需要按空格拆分,可以在方括号之间添加一个空格。

索引.js
const str = 'a.b c'; const result = str.split(/[. ]/); // 👇️ ['a', 'b', 'c'] console.log(result);

如果您在阅读正则表达式时需要帮助,请查看

来自 MDN的
正则表达式速查表。

下面是一个根据所有特殊字符拆分字符串的正则表达式示例。

索引.js
const str = 'a.b,c-d_e=f\\g/h'; const specialChars = /[`!@#$%^&*()_+\-=\[\]{};':"\\|,.<>\/?~]/; const result = str.split(specialChars); // 👇️ ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h'] console.log(result);

我们使用的正则表达式匹配任何特殊字符。如果您认为空格是一个特殊字符,您也可以在方括号中添加一个空格。

相反,您也可以删除方括号之间的任何字符,如果您不认为它们是特殊字符的话。