正则:后向引用文本替换

本文介绍如何使用正则表达式将电话号码格式从(区号)电话更改为0756-电话号码的形式。通过具体的代码示例展示了如何进行匹配与替换。

正则表达式的三部曲应该是:1、查找;2、引用匹配了的文本(后向引用);3、有选择地替换文本

需要注意的是:大部分语言的正则表达式实现,在查找中,使用后向引用来代表一个子模式,其语法是“\数字”;而在替换中,其语法是“$数字”。

替换电话号码格式

我们的电话格式通常都是:(区号)电话,比如说:(0756)8401132;现在假设我们要求把文本中所有的电话格式都改为:0756-8401132,我们可以这样做:

\((\d{4})\)(\d{8})
效果演示
(0756)82514769 
(0756)83281314 
(0756)88401132 

匹配后结果:

0756-82514769 
0756-83281314 
0756-88401132 

本例代码
function reg_replace()
{
	var test = document.getElementById("test");
	var regex = /\((\d{4})\)(\d{8})/g;
	test.innerHTML = test.innerHTML.replace(regex,"$1-$2");
}

如果这篇文章你是从头看到这里,相信这个表达式对你来说没有任何难度,需要留意的是这里对元字符“(”和“)”进行了转义,并且,在替换结果中,我们要求它不出现。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值