正则表达式转义字符实例


一、转义字符

转义字符包括三类:
(1)特定含义:\d \w \s \b
(2)特定符号:\ \’ \” > < . ^ $ * + ?
(3)ASCII表示字符:\nnn \xdd \uxxxx

带有特定含义的转义字符

\d\D
表示数字0-9相反 表示非数字
\w\W
表示数字、字母、下划线相反表示非数字、非字母、非下划线
\s\S
表示空白符相反 表示非空白符

利用ASCII表示字符

\nnn:每个n表示1个八进制数字,最多带有3个八进制数字
\xdd:x是固定格式,每个d表示1个十六进制数字,最多带有2个十六进制数字
\uxxxx:u是固定格式,每个x表示1个十六进制数字

二、贪婪匹配与非贪婪匹配

重复概念的元字符: ? + {m,n} {m,} *
匹配时默认采用的是贪婪匹配
贪婪匹配:匹配开头带有最多的结果
非贪婪匹配:在具有贪婪特性的元字符后面添加一个? 匹配开头带有最少的结果

三、分组与后向引用

在表达式中利用()括住的就是一个分组
在分组的后面使用\1来引用前面出现过的分组。\2表示第二个分组。

例:验证用户输入的固定电话号码格式是否为最后四位和区号一致(0311-85040311)

$(".btn").click(function(){
		  var tel=$("input[name=tel]").val();
		  var reg=/^(0\d{3})-\d{4}\1$/;   //利用\1来引用前面出现过的分组
		  if(tel.match(reg)==null){
			window.alert("请输入末尾四位与区号一致的电话号码");
		  }
	    })

replace()方法中使用后向引用

$1只能用在replace()方法的第二个参数中只能用在replace()方法的第二个参数中
$$ 表示一个$
$& 表示整个正则表达式匹配的子串结果

replace()的回调函数

replace()的第二个参数可以是一个回调函数(作为参数的函数就是回调函数)。

格式:字符串.replace(替换谁,换成谁);

格式:字符串.replace(替换谁,function(result,sub){
return 换成谁;
})

result:匹配第一个参数的表达式结果
sub:匹配第一个参数的分组的表达式结果。

例:将句子中每个单词的首字母大写。

 $(".btn").click(function(){
		   var pro=$("input[name=css]").val();
		   var temp=pro.replace(/\b(\w+)/g,function(result,sub){
			  var firstLetter=sub.slice(0,1);
			  var otherLetter=sub.slice(1);
			  return firstLetter.toUpperCase()+otherLetter;
		   })
		   console.log(temp);
	    })
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值