replace的使用
replace的用法String.prototype.replace(参数1,参数2)返回新的字符串,原来的字符串不会发生改变const str = "我想你";const result = str.replace("想", "爱");console.log(str, result);// 我想你 我爱你第一个参数为匹配模式:模式可以是一个字符串或者正则表达式第二个参数为替换值:替换值可以是一个字
·
replace的用法
String.prototype.replace(参数1,参数2)
返回新的字符串,原来的字符串不会发生改变
const str = "我想你";
const result = str.replace("想", "爱");
console.log(str, result); // 我想你 我爱你
第一个参数为匹配模式:模式可以是一个字符串或者正则表达式
第二个参数为替换值:替换值可以是一个字符串或者一个每次匹配都要调用的回调函数
replace搭配正则的使用
1)整个字符串去精准匹配-替换
const str = "我想你,好想你,我真的好想打你";
const result = str.replace(/想你/g, "恨他");
console.log(result); // 我恨他,好恨他;我真的好想打你
这里replace使用了正则进行全局的精准匹配,所有的”想你“两个字,都被替换成了”恨他“
2)将每一个字进行匹配-替换
这是第二个参数为一个函数,函数将前面用来匹配的字符串,替换成新的字符串
const str = "我想你,好想你,我真的好想打你";
const result = str.replace(/[想你]/g, (item) => `<em>${item}</em>`);
console.log(result)
// 我想你,好想你,我真的好想打你 我<em>想</em><em>你</em>,好<em>想</em><em>你</em>,却不 露痕迹;我真的好<em>想</em>打<em>你</em>
这两种是常用的匹配替换,搜索高亮经常用
如果想要在正则中使用变量,就要使用 new RegExp() 来生成正则了
更多推荐
已为社区贡献7条内容
所有评论(0)