首页 > 其他 > 详细

转义的相关学习记录

时间:2016-08-31 13:57:22      阅读:191      评论:0      收藏:0      [点我收藏+]

  学习编程语言的时候,经常碰到需要对字符转义的情况,有时候自己会把一些知识点搞混,特以此文记录,持续更新。

  先看一个小例子,要写一个正则匹配像‘010-12345‘这样的电话号码,由于‘-‘是特殊字符,在正则表达式中,要用‘\‘转义,所以,上面的正则是\d{3}\-\d{3,8}。如果不用‘\‘转义,则‘-‘就成正则里范围的意思。

  以上这个小例子讲了为什么要转义。

  另外,js里的字符串也有一些需要转义的字符字面量,详见高程33页。平时用的比较多的是对‘\\‘ ,‘\‘‘ ,‘\‘‘‘以及‘\unnnn‘。以下两个正则表达式是一样的,

  var re1 = /ABC\-001/;

  var re2 = new RegExp(‘ABC\\-001‘);

  通过new RegExp创建的正则因为变量是字符串,所以需要先对\进行一次转义,若不先对\进行一次转义,写成new RegExp(‘ABC\-001‘),js引擎会用字符串转义的规则用‘\‘对‘-‘进行转义,而js字符里并不需要对‘-‘转义,此时会有问题。

转义的相关学习记录

原文:http://www.cnblogs.com/zhansu/p/5825537.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!