为了账号安全,请及时绑定邮箱和手机立即绑定

将带有换行符和空格的输入拆分为数字数组,使数组末尾有额外的0

将带有换行符和空格的输入拆分为数字数组,使数组末尾有额外的0

米琪卡哇伊 2021-05-08 18:16:48
我有一些输入看起来像:22 222 00 53 33 51 1 13 0 01 10 0最后加上(有时)换行符。我已使用var b = this.data.replace(/\n/g, " ").split(/[\s,]+/).map(Number);上述输入存储在的位置将数据拆分为数字数组this.data。并且b是新数组。如果末尾没有换行符,则可以正常工作。但是,如果结尾处有换行符,那么结尾处将额外加一个0。似乎正在发生以下情况:\n 字符被空格替换列表在空格上分割-当\n结尾处有一个时,此列表的末尾有一个(空白)元素map(Number)将最后一个(空)元素解释为0。如何防止这种情况发生?
查看完整描述

3 回答

?
哆啦的时光机

TA贡献1779条经验 获得超6个赞

在使用字符串之前先修剪()字符串

trim()方法从字符串的两端删除空格。在这种情况下,空白是所有空白字符(空格,制表符,不间断空格等)和所有行终止符(LF,CR等)。

const str = `

2

2 2

2

2 0

0 5

3 3

3 5

1 1 1

3 0 0

1 10 0

`


const result = str.trim().split(/\s|\n/).map(Number)


console.log(result)


查看完整回答
反对 回复 2021-05-20
  • 3 回答
  • 0 关注
  • 202 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信