如何从字符串中找到数组?

39 浏览
0 Comments

如何从字符串中找到数组?

这个问题已经有了答案:

正则表达式提取方括号之间的文本

const str = "[1,2,3,4],5,6";
const getArray = (str) => {
...
return arr;
}
console.log(getArray(str));  //[1,2,3,4]

[1,2,3,4]是期望的数组。

我怎样才能得到它?

admin 更改状态以发布 2023年5月22日
0
0 Comments

你可以使用JavaScript方法lastIndexOf()来找到[]

这将给你所有[]之间的字符。

然后,你可以使用split()方法将数组转换。

使用map()Number,你可以将字符串转换为数字

const str = "[1,2,3,4],5,6";
function getArray(str){
  var myArray = str.substring(
    str.lastIndexOf("[") + 1, 
    str.lastIndexOf("]")
  );
  return myArray.split(",").map(Number);
}
console.log(getArray(str));

0
0 Comments

你可以使用regex来提取由[]包含的数字,然后运行map进行卫生处理。检查这个-

const str = "[1,2,3,4],5,6";
const getArray = str => {
    const regex = /(\[([^\]]+)\])/;
    const match = regex.exec(str);
    return match?.[2] ? match[2].split(',').map(x => x.trim()) : [];
}
console.log(getArray(str));

0