javascript 按多个分隔符拆分字符串,并排除按其他分隔符拆分

3ks5zfa0  于 2023-03-16  发布在  Java
关注(0)|答案(1)|浏览(234)

我想用*/+-拆分一个字符串,并且不使用''作为分隔符,所以给定字符串9.5+5*4/2.2,我希望结果是["9.5", "5", "4", "2.2"],然而,我目前得到的结果是["9", "5", "5", "4", "2", "2"]
这是我曾经尝试过的:

const test = '9.5+5*4/2.2'
const signs = ['*', '+', '-', '/']
console.log(test.split(/[*+-/]/))
mzillmmw

mzillmmw1#

+-/被视为一个值范围,其中包括.。请参阅ASCII表中的here+为43,/为47。由于.为46,因此包含在该范围中。
要防止将-视为范围,请将其移到字符集的末尾:

const test = '9.5+5*4/2.2'
const signs = ['*', '+', '-', '/']
console.log(test.split(/[*+/-]/))

相关问题