我有一个字符串,
var str = '12990|2346|5771|22523|73|16660|16770|16205|8407|13691|'
我想拆分这个字符串以保存前五个值,例如 12990|2346|5771|22523|73
我试过以下逻辑
str.split('|').slice(0,5)
但它以数组格式返回。我不希望那样。
最佳答案
您可以使用 join()
加入切片数组
str.split('|').slice(0, 5).join('|');
var str = '12990|2346|5771|22523|73|16660|16770|16205|8407|13691|';
console.log(str.split('|').slice(0, 5).join('|'));
或者,正则表达式也可以与 match()
str.match(/\d+(\|\d+){4}/)[0]
var str = '12990|2346|5771|22523|73|16660|16770|16205|8407|13691|';
console.log(str.match(/\d+(\|\d+){4}/)[0]);
正则表达式将匹配一个或多个数字后跟四个管道实例,后跟数字。
\d+
:匹配一个或多个数字\|
:匹配管道|
字面量{4}
:正好匹配前一组四次
match
返回一个数组,要获得完整的匹配使用 [0]
。
关于javascript - 拆分字符串以仅保存前几个值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43656118/