JavaScript 用下划线(_)替换字符串中的特殊字符
在本文中,我们将看到如何在JavaScript中用下划线替换字符串中的特殊字符。JavaScript的replace()方法用于将字符串中的所有特殊字符替换为下划线,具体如下所述:
JavaScript replace()方法: 该方法搜索一个字符串中的特定值或正则表达式,并返回一个用替换后的特定值替换的新字符串。
语法:
string.replace(searchVal, newvalue)
参数:
- searchVal: 这是一个必需的参数。它指定要替换为新值的值或正则表达式。
- newvalue: 这是一个必需的参数。它指定要用来替换搜索值的值。
返回值: 它返回与参数中指定的模式匹配的新字符串。
示例1: 此示例使用 replace()方法 将 所有特殊字符 替换为 _(下划线) 。
let str = "This, is# GeeksForGeeks!";
console.log(str.replace(/[&\/\\#, +()$~%.'":*?<>{}]/g, '_'));
输出
This__is__GeeksForGeeks!
示例2: 这个示例将一个独特的特殊字符替换为下划线_。这个示例遍历每个字符并检查它是否是我们要寻找的特殊字符,然后将其替换为下划线。在这个示例中,独特的字符是$(美元符号)。
let str = "AcomputerscienceportalforGeeks";
function gfg_Run() {
let newStr = "";
for (let i = 0; i') {
newStr += '_';
}
else {
newStr += str[i];
}
}
console.log(newStr);
}
gfg_Run();
输出
A_computer_science_portal_for_Geeks
示例3: 在这个示例中,我们将一个唯一的特殊字符替换为_(下划线)。这个示例使用spread功能来从一个字符串中形成一个数组,并借助reduce来形成一个字符串,其中排除了所有特殊字符,并在它们的位置加入了下划线。在这个示例中,独特的字符是&\/#, +()$~%.'”:*?<>{}
。
let check = chr => `&\/#, +()$~%.'":*?<>{}`.includes(chr);
let str = "This, is# GeeksForGeeks!";
let underscore_str = [...str]
.reduce((s, c) => check(c) ? s + '_' : s + c, '');
console.log(underscore_str);
输出
This__is__GeeksForGeeks!