JavaScript 正则表达式 – 如何替换特殊字符
既不是字母也不是数字的字符被称为特殊字符。 特殊字符实际上是所有无法阅读的字符,包括标点符号、重音符号和符号标记。
从字符串中删除所有特殊字符,使其更易于阅读和理解。在进入文章之前,让我们快速查看JavaScript中的正则表达式。
JavaScript中的正则表达式
正则表达式是一种模式,可以用于匹配字符串中的字符组合。正则表达式是JavaScript中的对象。这些模式可以与 RegExp的exec()和test()方法 以及 String的match(), matchAll(), replace(), replaceAll(), search(), 和 split()方法 一起使用。
语法
以下是正则表达式的语法 –
/pattern/modifier(s);
让我们深入了解如何替换特殊字符的文章,以便更好地理解。为此,我们使用 replace() 方法。
使用 replace() 方法
JavaScript 内置方法 string.replace() 可以用于用另一个字符串或正则表达式替换提供的字符串的一部分。原始字符串不会改变。
语法
以下是 replace() 的语法
string.replace(searchValue, newValue)
要了解更多关于替换特殊字符的信息,请看以下示例。
示例
在下面的示例中,我们正在运行脚本使用 replace() 来替换所有的特殊字符。
<!DOCTYPE html>
<html>
<body style="background-color:#ABEBC6">
<script>
var statement = "We#@lcome!! To! The@ Tutorials$Point%";
var result = statement.replace(/[^a-zA-Z ]/g, "");
document.write(result);
</script>
</body>
</html>
当脚本被执行时,它将生成一个输出,其中的文本已被脚本中使用的特殊字符替换。
示例
考虑以下示例,我们正在运行脚本使用 replace() 替换特殊字符。
<!DOCTYPE html>
<html>
<body>
<p id="tutorial"></p>
<button onclick="replacespecial()">Click To Change</button>
<p id="tutorial1"></p>
<script>
var element_up = document.getElementById("tutorial");
var element_down = document.getElementById("tutorial1");
var statement = "Th@e Bes^t E-w#ay Le*arn(ing";
element_up.innerHTML = statement;
function replacespecial() {
element_down.innerHTML =
statement.replace(/[&\/\#, +()~%.'":@^*?<>{}]/g, '!');
}
</script>
</body>
</html>
运行上述脚本后,输出将弹出,显示原始语句以及一个点击按钮。当用户点击按钮时,事件将被触发,并且所有特殊字符将被替换为在网页上显示的”!”。
示例
执行下面的脚本,观察如何使用 replace() 方法替换所有特殊字符。
<!DOCTYPE html>
<html>
<body>
<script>
let statement = "T!P, Wher$%e Y@ou F*ind L@ot O!f Courses"
function replacespecial(_value){
var lowerCase = _value.toLowerCase();
var upperCase = _value.toUpperCase();
var replacement = "";
for(var i=0; i<lowerCase.length; ++i) {
if(lowerCase[i] != upperCase[i] || lowerCase[i].trim() === '' || lowerCase[i].trim() === "." ||
lowerCase[i].trim() === ",")
replacement += _value[i];
}
return replacement;
}
let result = replacespecial(statement)
document.write(result)
</script>
</body>
</html>
当脚本执行时,事件被触发,替换自特殊字符的文本会显示在网页上。