我需要摆脱各个时间报价(小时:分钟:秒,毫秒)之间的所有空格。
这string
00: 00: 35,207 -> 00: 00: 38,664
必须成为
00:00:35,207 -> 00:00:38,664
如何使用RegEx
?
我试过这个
var string = "00: 00: 35,207 -> 00: 00: 38,664";
console.log(string.replace(/(?<=\d+)\s+(?=\d+)/g, ""))
&#13;
但是这样做不起作用。
答案 0 :(得分:2)
Javascript不支持lookbehind (?<=
你可以:
选择要替换的内容,在本例中为冒号和空格:
然后用冒号:
正如@melpomene评论的那样,您可以使用:
var string = "00: 00: 35,207 -> 00: 00: 38,664";
console.log(string.replace(/: /g, ':'));
&#13;
使用/g
全局标记在第一次匹配后不返回。
如果您想使用正向前瞻,可以使用: (?=\d+)
var string = "00: 00: 35,207 -> 00: 00: 38,664";
console.log(string.replace(/: (?=\d+)/g, ':'));
&#13;
答案 1 :(得分:1)
这样的事情应该有效:
const test = "00: 00: 35,207 -> 00: 00: 38,664";
console.log(test.replace(/\s*(:|,)\s*/g, "$1"));
&#13;
正则表达式只是将:
或,
替换为包含该字符的空格。