[Web]javascript正则表达式语法
来源:互联网 发布:xampp配置mysql 编辑:程序博客网 时间:2024/06/16 05:57
1.基础语法
2.范围符号
3.分组
4.重复
5.正则表达式内置方法
(1)test:判断一个字符串是否匹配该正则表达式的,参数为需要进行匹配的字符串,返回一个布尔值。
(2)exec:查找字符串中是否有匹配该正则表达式的字符,并且返回一个匹配字符所组成的一个数组。
(3) compile:改变正则的属性。
6.字符串于正则相配合
(1)match
match()方法用检索字符串中符合正则表达式的字符,并返回一个有符合字符组成的数组:
(2)search
search()方法用于查询字符串中符合正则的字符的索引,并返回这个索引,没有找到返回-1,这个方法只能返回第一个匹配到的字符的索引位置:
(3)split
split()方法用于将字符串转换为数组,参数是字符串转换数组后间隔的参照物,但是有一些复杂的转换就比较麻烦了,这时候我们可以使用正则表达式对字符串进行筛选后再组成数组.
(4)replace
replace()方法可以传入两个参数,第一个是字符串中需要被替换的字符,第二个是用以替换的字符,但是如果只是传入两个字符,那么它只能替换一次,如果和正则表达式结合起来使用,就能利用正则的全局匹配进行多次替换,甚至更加复杂的操作
7.es6中正则的扩展
(1)字符串的正则扩展
字符串对象共有4个方法,可以使用正则表达式。ES6将这4个方法,在语言内部全部调用RegExp的实例方法,从而做到所有与正则相关的方法,全都定义在RegExp对象上。
string.prototype.match调用reqexp.prototype[symbol.match]
(2)u修饰符
ES6对正则表达式添加了u修饰符,含义为“Unicode模式”,用来正确处理大于\uFFFF的Unicode字符。也就是说,会正确处理四个字节的UTF-16编码。
上面代码中,\uD83D\uDC2A是一个四个字节的UTF-16编码,代表一个字符。但是,ES5不支持四个字节的UTF-16编码,会将其识别为两个字符,导致第二行代码结果为true。加了u修饰符以后,ES6就会识别其为一个字符,所以第一行代码结果为false。
(3)y修饰符
y修饰符的作用与g修饰符类似,也是全局匹配,后一次匹配都从上一次匹配成功的下一个位置开始。不同之处在于,g修饰符只要剩余位置中存在匹配就可,而y修饰符确保匹配必须从剩余的第一个位置开始,这也就是“粘连”的涵义。
ar s = 'aaa_aa_a';var r1 = /a+/g;var r2 = /a+/y;r1.exec(s) // ["aaa"]r2.exec(s) // ["aaa"]r1.exec(s) // ["aa"]r2.exec(s) // null
上面代码有两个正则表达式,一个使用g修饰符,另一个使用y修饰符。这两个正则表达式各执行了两次,第一次执行的时候,两者行为相同,剩余字符串都是_aa_a。由于g修饰没有位置要求,所以第二次执行会返回结果,而y修饰符要求匹配必须从头部开始,所以返回null。
- [Web]javascript正则表达式语法
- javascript 正则表达式语法
- JavaScript正则表达式语法
- javascript正则表达式语法
- javascript 正则表达式语法
- JavaScript 正则表达式语法
- JavaScript正则表达式语法
- JavaScript的正则表达式语法
- javascript中的正则表达式语法
- JavaScript的正则表达式语法
- javascript中的正则表达式语法
- 关于:javaScript正则表达式语法
- JavaScript基础语法---正则表达式
- javascript正则表达式基本语法
- JavaScript正则表达式基本语法
- JavaScript中的正则表达式对象2--正则表达式语法
- javascript中replace正则表达式语法
- javascript中replace的正则表达式语法
- 数据库更新迭代
- 搭建CAS单点登录服务器
- Spring MVC ModelAndView使用时所犯的一个小错误
- 使用CSS的flex的感悟
- not known to the MapperRegistry
- [Web]javascript正则表达式语法
- TF实现物体识别、行人检测和图像
- JavaScript 扩展方法
- 霍金:人工智能不一定是好事,或导致人类灭亡【智库2861】
- Android PopupWindow的使用和分析
- 苏宁携手S8南京“搞事情”,背后透露出怎样的信号?
- 说说 JavaScript 在 DOM 2、3 级标准中定义的样式规则(属性和方法)
- ES6语法(4)
- gcc编译,出现错误:expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ........