从字符串中移除感叹号javascript

时间:2017-03-27 22:09:10

标签: javascript arrays

嗨,我知道这段代码有效,但我不明白,有人可以解释一下。

function remove(s){
return s.replace(/!+$/, '');
}
remove('Hi!'); // outputs 'Hi'
remove('!Hi'); // outputs 'Hi'
我理解了!被替换为空字符串但是什么是反斜杠,加上和美元符号??? 谢谢

1 个答案:

答案 0 :(得分:0)

没有反斜杠,那些是正斜杠。它们是Javascript RegExp文字的语法,就像在字符串周围使用引号一样。

+$是正则表达式语法的一部分。 +表示匹配前面一个或多个模式(在这种情况下为!),$匹配字符串的结尾。所以这将替换字符串末尾的!序列。

您应该阅读有关正则表达式的教程。转到regular-expression.info

由于它只匹配字符串末尾的!remove('!Hi')应该返回!Hi,而不是Hi