在JavaScript中,字符串替换 有多种方法,下面介绍其中一些比较常用的方法。
使用replace()方法、
replace()方法用于在字符串中查找并替换指定的子串。它接受两个参数:第一个参数是需要替换的子串或用于匹配子串的正则表达式,第二个参数是需要替换成的字符串。
1、例如:
let str1 = 'hello world';
let str2 = str1.replace('world', 'javascript');
console.log(str2); // hello javascript
注意!!!!! replace()方法是不会修改原字符串的,它会返回一个新的字符串。
2.使用正则表达式替换
如果需要使用正则表达式进行替换,可以使用replace()方法的第一个参数传入一个正则表达式。
例如:
let str1 = '2022-02-22';
let str2 = str1.replace(/-/g, '/');
console.log(str2); // 2022/02/22
使用了正则表达式/-/g来匹配-字符,并用/字符来替换掉。
3.使用replaceAll()方法
从ECMAScript 2021规范开始,JavaScript原生支持了replaceAll()方法。它也是用于在字符串中替换指定的子串,但是相比于replace()方法,它可以直接替换所有匹配的子串,而不需要使用正则表达式。
例如:
let str1 = 'hello world';
let str2 = str1.replaceAll('o', 'O');
console.log(str2); // hellO wOrld
注意,由于replaceAll()方法目前还不是所有浏览器都支持,因此在实际开发中需要进行兼容性处理。
注意: | 这个变化 需要 双反斜杠
var str = "1234|56|789";
var replacedStr = str.replace(/\|/g, '1');
console.log(replacedStr);