对每一个匹配的部分替换不同的字符(主要分享思想)

本文提供两个JavaScript示例,展示如何使用正则表达式和函数进行字符串的匹配与替换操作,适用于网页开发。

 

例子代码:

Code:
  1. <script language="javascript">    
  2.   
  3. function test()    
  4. {    
  5. var nstr;   
  6.         if(arguments[0]!=undefined)   
  7.         {   
  8.         var re=/^[a-z]+$/;   
  9.         var re1=/^/d+$/;   
  10.             if(re.test(arguments[0])){   
  11.                 nstr="<font color='red'> 本次参数值是"+arguments[0]+"替换为lai</font>";   
  12.             }   
  13.             else if(re1.test(arguments[0])){   
  14.                 nstr="<font color='#00ff00'>本次参数值是"+arguments[0]+"替换为你好</font>";   
  15.             }   
  16.         }   
  17.         return nstr;   
  18.     }    
  19.   
  20. var str="a123测试4abc" ;   
  21. var reg=new RegExp("([a-z]+)|(//d+)","g");    
  22. var newstr1=str.replace(reg,test);   
  23. document.write(newstr1);   
  24. </script>    

 再给一个例子:

Code:
  1.  var i=0;   
  2. function Ttest()    
  3. {    
  4. var arr=['第一个','第二个','第三个']   
  5. var nstr;   
  6.         if(arguments[0]!=undefined)   
  7.         {   
  8.         var re=/^[a-z]+$/;   
  9.             if(re.test(arguments[0])){   
  10.                 nstr="<font color='red'> 本次参数值是"+arguments[0]+"替换为"+arr[i]+"</font>";   
  11.                 if(i!=arr.length)   
  12.                 {   
  13.                 i++;   
  14.                 }   
  15.                 else  
  16.                 {   
  17.                 i=0   
  18.                 }   
  19.             }   
  20.         }   
  21.         return nstr;   
  22.     }    
  23.   
  24. var str="a123测试4abc你好aaa" ;   
  25. var reg=new RegExp("([a-z]+)","g");    
  26. var newstr2=str.replace(reg,Ttest);   
  27. document.write(newstr2);  

 

这只是针对某一类型的代码而设置的,所以只要学习其中的思想,其他类型的一样可以用此方法类似实现

评论 42
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

一把编程的菜刀

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值