JavaScript中的以下语句按预期工作:
var s1 = s2.replace(/ /gi, '_'); //replace all spaces by the character _
Run Code Online (Sandbox Code Playgroud)
但是,要替换所有出现的字符.由角色_,我有:
var s1 = s2.replace(/./gi, '_');
Run Code Online (Sandbox Code Playgroud)
但结果是一个字符串完全填充了字符_
为什么以及如何更换.通过_使用JavaScript?
Jac*_*son 25
的.正则表达式中的字符将匹配所有内容.你需要逃避它,因为你想要一个文字句点字符:
var s1 = s2.replace(/\./gi, '_');
Run Code Online (Sandbox Code Playgroud)
你需要逃避点,因为它是正则表达式中的特殊字符
s2.replace(/\./g, '_');
Run Code Online (Sandbox Code Playgroud)
请注意,点不需要在字符类中转义,因此如果您想一次性用下划线替换点和空格,您可以这样做:
s2.replace(/[. ]/g, '_');
Run Code Online (Sandbox Code Playgroud)
使用iflag与此处以及第一个正则表达式无关.
| 归档时间: |
|
| 查看次数: |
21618 次 |
| 最近记录: |