JS 正则
2017-05-16 本文已影响0人
郭远方
JS<small>&</small>RegExp
- 正则干什么
1.1 处理文本
1.2
将进酒⑴
君不见,黄河之水天上来⑵,奔流到海不复回。
君不见,高堂明镜悲白发,朝如青丝暮成雪⑶。
人生得意须尽欢⑷,莫使金樽空对月。
天生我材必有用,千金散尽还复来。
烹羊宰牛且为乐,会须一饮三百杯⑸。
从百度百科中将《将进酒》拷贝出来,但我们发现产生了一些数字标号,这是我们不需要的,可以直接手动删除,但我们也可以使用另一种语法——正则表达式
-
正则怎么干
2.1 举个栗子
2.1.2
2.2 语法- 开始与结束
- / / 中间为正则表达式
/ / 后可接i(表示不区分大小写),g(表示全文搜索),m(表示多行匹配)
var patt1 = /runoob/i;- ^ 表示(字符串)开头,$ 表示(字符串)结尾, \b表示单词开头或结尾,\B表示非单词开头或结尾
- / / 中间为正则表达式
- 0个/1个/多个/任意个
* + 1次或多次
runoob,可以匹配 runoob、runooob、runooooob
* * 0次或1次或多次
runoo*b,可以匹配 runob、runoob、runoooooob 等
* ? 1次或0次
colou?r 可以匹配 color 或者 colour - 括号们
* ()提取匹配的字符,有多少提取多少
* []中间表示字符簇,其中任意字符都可以/^[aeiou]$/ /^[a-zA-Z]$/
* {}表示前面字符的匹配次数,{3}为3次,{3,}为3及以上次,{1,3}为1、2或3次 - ‘\’们
\ 作用有二
1)做为转意,即通常在""后面的字符不按原来意义解释
* .匹配除换行符以外的任意字符
* \w匹配字母或数字或下划线或汉字
* \s匹配任意的空白符
* \d匹配数字
* \b匹配单词的开始或结束
反义
* \W匹配任意不是字母,数字,下划线,汉字的字符
* \S匹配任意不是空白符的字符
* \D匹配任意非数字的字符
* \B匹配不是单词开头或结束的位置
* [^x]匹配除了x以外的任意字符
* [^aeiou]匹配除了aeiou这几个字母以外的任意字符
2) 将正则表达式中的* , +等特殊符号变为一个普通的字符去匹配
- 开始与结束
-
练习题
-
参考
4.1 在线输入正则式,立刻在下面出现结果 http://www.regexr.com/
4.2 《正则表达式30分钟入门教程》 http://www.cnblogs.com/deerchao/archive/2006/08/24/zhengzhe30fengzhongjiaocheng.html