我正在用Node.js和Discord制作一个Discord Bot.js,我试图实现某种时间阅读器,当用户以这种格式发送某些东西时,我想操纵一些计时器。我想将接收到的字符串拆分为并使用.1h30m1h30mstr.endsWith('')let str = '1h30m';if (!(/[^dhms0-9]/ig).test(str)) { console.log('RegExp Success.'); duration = str.split(/[0-9]/); console.log(duration);}我提出了一个条件,只有当它只有数字或任何字母“d”,“h”,“m”和“s”而没有其他东西时,它才是正确的。它检测到它很好,但是当我按数字拆分时,我得到以下数组:[ '', 'h', '', 'm' ]我想得到的是['1h', '30m']
1 回答
MMTTMM
TA贡献1869条经验 获得超4个赞
您可以通过查找后跟 或 的数字来匹配这些部分。hm
let str = '1h30m',
duration = str.match(/\d+[hm]/gi);
console.log(duration);
添加回答
举报
0/150
提交
取消