加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

String.replace使用技巧

发布时间:2020-12-14 06:10:49 所属栏目:百科 来源:网络整理
导读:relace replace() 方法返回一个由替换值替换一些或所有匹配的模式后的新字符串。模式可以是一个字符串或者一个正则表达式,替换值可以是一个字符串或者一个每次匹配都要调用的函数。 使用字符串作为参数 变量名 代表的值$$ 插入一个 "$"。$ 插入匹配的子串。$

relace

replace() 方法返回一个由替换值替换一些或所有匹配的模式后的新字符串。模式可以是一个字符串或者一个正则表达式,替换值可以是一个字符串或者一个每次匹配都要调用的函数。

使用字符串作为参数

变量名 代表的值
$$  插入一个 "$"。
$&  插入匹配的子串。
$`  插入当前匹配的子串左边的内容。
$‘  插入当前匹配的子串右边的内容。
$n  假如第一个参数是 RegExp对象,并且 n 是个小于100的非负整数,那么插入第 n 个括号匹配的字符串。提示:索引是从1开始
var re = /(w+)s(w+)/;
var str = "John Smith";
var newstr = str.replace(re,"$2,$1");
// Smith,John
console.log(newstr);

指定一个函数作为参数

变量名 代表的值
match   匹配的子串。(对应于上述的$&。)
p1,p2,假如replace()方法的第一个参数是一个RegExp 对象,则代表第n个括号匹配的字符串。(对应于上述的$1,$2等。)例如,如果是用 /(a+)(b+)/这个来匹配, p1就是匹配的 a+,p2 就是匹配的 b+。
... 

offset  匹配到的子字符串在原字符串中的偏移量。(比如,如果原字符串是“abcd”,匹配到的子字符串是“bc”,那么这个参数将是1)

string  被匹配的原字符串。
function replacer(match,p1,p3,offset,string) {
  // p1 is nondigits,p2 digits,and p3 non-alphanumerics
  return [p1,p3].join(‘ - ‘);
}
var newString = ‘abc12345#$*%‘.replace(/([^d]*)(d*)([^w]*)/,replacer);
console.log(newString);  // abc - 12345 - #$*%

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读