2019/1.2/正则的理解
2019-01-03 09:56:14来源:博客园 阅读 ()
1.var reg=/./ var reg=/\./
前者代表任何一个字符,后者代表这个字符中得有一个
2.?的使用
如果单独一个字符后面带? var reg=/\d?/ /n?/
代表一个或0个字符的出现
如果是量词+和*,{2,}后面带?取消正则的贪婪性 在捕获阶段
3.捕获
1.普通捕获 exec() macth()
普通捕获也有懒惰行,给正则添加一个修饰符g 就可以解决,match 是将所有捕获的内容放在一个数组并返回。match就是对exec的一个简单的封装
2.分组捕获 捕获方法还是exec和match
正则在结构上发生了变化 ,加()
var reg=/(a)(b)/
Exec()和match()在非全局下分组捕获是相同的,在捕获的过程中即捕获大正则里的内容也捕获分组中的内容并都返回
Exec()和match()在全局下分组捕获是不一样的,exec()不变。但是match只捕获大正则里的内容
3.分组捕获的优势
A 可以提升优先级
B 可以捕获引用
\1 代表捕获1里面的内容 \2代表分组2里面的内容
前提是分组必须在引用前面,如果\2在分组的前面代表普通的表达式???
分组的结果存在正则类 RegExp的$number属性下
\1 和RegExp.$1二者都是分组引用
\1 只能使用正则表达式里面,RegExp.$1可以外面使用。都是在捕获完成的条件下。
4. 在捕获的过程中怎样取消捕获分组中的内容
在分组的前面加上?:就ok了
?:和?=的区别
?:取消捕获分组中的内容
?= a(?=s)
5.replace细说
replace 是字符串的一个方法,他有两个参数,用后者将前者替换掉,并都返回一个新的字符串,但是没有改变原来的字符串。
1. 如果第一个参数是字符串只改变一次
2. 如果第二个参数是正则,捕获一次改变一次
3.如果第二个参数是匿名函数,每捕获一次这个匿名函数就执行一次,return是什么,那就替换成什么,这个匿名函数的arguments有三个元素
作者:晋飞翔
QQ/微信同步:318080891
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
- 2019.8.12 2019-08-14
- 关于获取jquery对象的长度 2019-08-14
- Javascript正则 2019-08-14
- 常用正则表达式 2019-08-14
- 2019-7-29--登陆验证 2019-08-14
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash