字符串replace String.replace

本文探讨了JavaScript中的字符串替换方法,通过实例展示了如何利用正则表达式匹配和替换字符串。讲解了$&、$`、$'、$n等特殊符号在替换过程中的作用,并提供了camelize函数用于驼峰式转换字符串。同时,文章还介绍了replace方法在处理匹配字符串时的不同用法。
摘要由CSDN通过智能技术生成
let a = 'abcd_efg;abcd_hijk;'
a.replace(/_|;/g,'$$')
//'abcd$efg$abcd$hijk$'

a.replace(/;/g,'$&')
//'abcd_efg;abcd_hijk;'
a.replace(/;/g,'$&_')
//'abcd_efg;_abcd_hijk;_'
## 将匹配到的字符串左边的替换掉;
a.replace(/;/,'$`')
//'abcd_efgabcd_efgabcd_hijk;'
## 将匹配到的字符串右边的替换掉;
a.replace(/;/,'$\'')
//'abcd_efgabcd_hijk;abcd_hijk;'
## 正则中必须有小括号;索引是从1开始
a.replace(/(abcd_efg;)(abcd_hijk;)/,'$2 $1')
//'abcd_hijk; abcd_efg;'
## 失败
a.replace(/(efg)(hijk)/,'$2 $1')
'abcd_efg;abcd_hijk;'

function camelize(str) {
      return str.replace(/-(\w)/g, function(a,b,c,d) {
			  console.log(a,b,c,d)
			  //-b b 1 a-bcdef
	          return b ? b.toUpperCase() : '';
	      })
	  }
	  console.log(camelize('a-bcdef'))
	  //aBcdef

使用函数

let a = 'abcdefghijklmnopqrstuvwxyz';
a.replace(/g/g, (a,b,c,d) => {console.log(a,b,c,d)})
//g;	匹配的字符串;
//6;	偏移量
//abcdefghijklmnopqrstuvwxyz;  原字符串
//undefined;   undefined
a.replace(/(g)(h)/, (a,b,c,d) => {console.log(a,b,c,d)})
// gh g h 6
//从第二个参数处开始添加匹配到的括号内的值;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值