正则表达式替换字符串 $1 占位符

2,363 阅读1分钟

本文引用:www.cnblogs.com/yzhihao/p/1… 正则参考:blog.csdn.net/z69183787/a…

replace 用于在字符串中用一些自负替换另一些字符,或替换一个与正则表达式匹配的子串。

str.replace(regex/substr,replacement)
参数一:要匹配的字符串或者正则表达式
参数二:要替换的新内容。
replacement 中的 $ 字符

1,1,2

/把 "Doe, John" 转换为 "John Doe" 的形式:
var str = "Doe, John";
str.replace(/(\w+)\s*, \s*(\w+)/, "$2 $1");

说明:$1,$2上就是按顺序对应小括号里面的小正则 捕获到的内容。

第二个参数是函数

把字符串中所有单词的首字母都转换为大写:
var str = 'aaa bbb ccc';
uw=str.replace(/\b\w+\b/g, function(word){
  return word.substring(0,1).toUpperCase()+word.substring(1);}
  );
说明:匹配一次就执行一次函数,匹配的内容作为参数

//把数字转成对应的汉子
var ary=["一","二","三","四","五","六"]
"123456".replace(/\d/g,function(val){
  return ary[val-1]
})

\b 用来匹配单词 前一个或后一个不完全是 \w

单词首字母大写

    function uppperCase(str) {  
        return str.toLowerCase().replace(/( |^)[a-z]/g, (L) => L.toUpperCase());  
} 

其他常用正则替换

//去除空格
String.prototype.Trim = function() {
return this.replace(/\s+/g, "");
}
  
//去除换行
function ClearBr(key) {
key = key.replace(/<\/?.+?>/g,"");
key = key.replace(/[\r\n]/g, "");
return key;
}
  
//去除左侧空格
function LTrim(str) {
return str.replace(/^\s*/g,"");
}
  
//去右空格
function RTrim(str) {
return str.replace(/\s*$/g,"");
}
  
//去掉字符串两端的空格
function trim(str) {
return str.replace(/(^\s*)|(\s*$)/g, "");
}
  
//去除字符串中间空格
function CTim(str) {
return str.replace(/\s/g,'');
}
  
//是否为由数字组成的字符串
function is_digitals(str) {
var reg=/^[0-9]*$/; //匹配整数
return reg.test(str);
}