String.replace()无效,即使其他语言中的正则表达式相同吗?

时间:2015-07-04 19:10:29

标签: javascript regex

我有一个textarea元素,其中包含以下格式的文本:

 215
 00:10:38,810 --> 00:10:40,040
 [ROBIN LAUGHING]

 216
 00:10:40,370 --> 00:10:41,330
 [ALL SCREAMING]

我接受该文本并在其上运行replace(/^[\d\s-:,>]+$/g, '');,然后console.log结果。但我看到结果不变,而不是任何改变。

我使用Ruby'String#gsub方法在同一文本上尝试了相同的正则表达式,它完全符合我的要求。我对JavaScript的不同做法感到有些困惑。

1 个答案:

答案 0 :(得分:2)

尝试使用此正则表达式/^[\d\s\-:,>]+$/mg而不是您使用的正则表达式。

另外,请记住.replace会保持原始字符串不变,因此您应该执行以下操作:

myString = myString.replace(/^[\d\s\-:,>]+$/mg, "");