如何使用JavaScript替换字符串中的所有字符用于此特定情况:replace。借_
JavaScript中的以下语句按预期工作:如何使用JavaScript替换字符串中的所有字符用于此特定情况:replace。借_,javascript,regex,Javascript,Regex,JavaScript中的以下语句按预期工作: var s1 = s2.replace(/ /gi, '_'); //replace all spaces by the character _ 但是,要替换角色的所有匹配项。通过角色uux,我有: var s1 = s2.replace(/./gi, '_'); 但结果是一个完全由字符填充的字符串_ 为什么以及如何替换。通过使用JavaScript 。正则表达式中的字符将匹配所有内容。您需要转义它,因为您需要一个文字句点字符: var s1 =
var s1 = s2.replace(/ /gi, '_'); //replace all spaces by the character _
但是,要替换角色的所有匹配项。通过角色uux,我有:
var s1 = s2.replace(/./gi, '_');
但结果是一个完全由字符填充的字符串_
为什么以及如何替换。通过使用JavaScript 。正则表达式中的字符将匹配所有内容。您需要转义它,因为您需要一个文字句点字符:
var s1 = s2.replace(/\./gi, '_');
您需要转义点,因为它是正则表达式中的一个特殊字符
s2.replace(/\./g, '_');
请注意,点不需要在字符类中转义,因此,如果要一次性用下划线替换点和空格,可以执行以下操作:
s2.replace(/[. ]/g, '_');
使用
i
标志在这里以及在第一个正则表达式中都是不相关的。您也可以使用字符串而不是正则表达式
var s1 = s2.replace ('.', '_', 'gi')
还有一种方法也很有效:
var s1 = s2.split(".").join("_"); // Replace . by _ //
如果需要,将“退格为”
value.replace(/“/g,“\”)+1很好的一点-这里的正则表达式是多余的。(提示3…2…1…中的J.Z.引用)第三个参数不是标准参数。并非所有浏览器都支持它。这是一种非常奇怪的方法,它是唯一一种完全不需要RegExp的方法。这是一种不同的方法,最好是替换,它只替换第一次出现的