例如:"10.cm" ...变成了... [10,".cm"]或者["10",".cm"],当字符串被拆分后,任何一个都会这样做。我试过了
"10.cm"
[10,".cm"]
["10",".cm"]
"10.cm".split(/[0-9]/|/[abc]/)
但似乎我对如何使用regexp的理解不是很透彻谢谢
a11xaf1n1#
您可以使用/\d+|\D+/g regex将字符串标记为数字和非数字:
/\d+|\D+/g
var s = "10.cm"; console.log(s.match(/\d+|\D+/g));
\d+
|
\D+
dgjrabp22#
**/\W/匹配任何非单词字符。这包括空格和标点符号,但不包括下划线。在此解决方案中,/\W/**可用于拆分和联接方法。您可以将数字与其他字符分隔开。
let s = "10.cm"; console.log(s.split(/\W/).join(" "));
输出= 10 cm
2条答案
按热度按时间a11xaf1n1#
您可以使用
/\d+|\D+/g
regex将字符串标记为数字和非数字:\d+
-匹配1个或多个数字|
-或\D+
-匹配1个或多个非数字字符。dgjrabp22#
**/\W/匹配任何非单词字符。这包括空格和标点符号,但不包括下划线。在此解决方案中,/\W/**可用于拆分和联接方法。您可以将数字与其他字符分隔开。
输出= 10 cm