我有以下字符串
str = "11122+3434"
我想把它分成["11122", "+", "3434"]。可以有以下分隔符 +、-、/、*
我尝试过以下方法
strArr = str.split(/[+,-,*,/]/g)
但我明白了
strArr = [11122, 3434]
最佳答案
分隔符是分隔数据的东西。因此 .split()
方法旨在删除分隔符,因为分隔符不是数据,因此它们根本不重要。
就您而言,两个值之间的东西也是数据。所以它不是一个分隔符,而是一个运算符(事实上,这就是数学中所说的)。
为此,您需要解析数据而不是拆分数据。因此,最好的办法是正则表达式:
var result = str.match(/(\d+)([+,-,*,/])(\d+)/);
返回一个数组:
["11122+3434", "11122", "+", "3434"]
因此您的值将是 result[1]
、result[2]
和 result[3]
。
关于Javascript - 字符串分割,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39738283/