javascript之正则表达式
来源:互联网 发布:龙献文天下数据 编辑:程序博客网 时间:2024/05/21 22:24
- new
var re = new RegExp('test','gi');
var re = /test/gi;
- function
test();//bool
exec();//string 一次匹配并返回
match();//array 多次匹配并返回
search();//类似indexOf()
replace();//替换
split();//分割
- 有用的预定义类
. [^\n\r]//不包含换行的任何字符
\d [0-9]
\D [^0-9]
\s [\t\n\x0B\f\r]//空字符,换行符
\S [^\t\n\x0B\f\r]//非空,非换行
\w [a-zA-Z0-9]
\W [^a-zA-Z0-9]
- 量词
? {0,1}
* {0,}
+ {1,}
{n} 一定出现n次
{n,m} 至少出现n次,但不超过m次
{n,} 至少出现n次
- 贪婪: "{m,n}", "{m,}", "?", "*", "+"
(d)(\w+) "\w+" 将匹配第一个 "d" 之后的所有字符 "xxxdxxxd"
(d)(\w+)(d) "\w+" 将匹配第一个 "d" 和最后一个 "d" 之间的所有字符 "xxxdxxx"。虽然 "\w+" 也能够匹配上最后一个 "d", 但 是为了使整个表达式匹配成功,"\w+" 可以 "让出" 它本来能够匹配的最后一个 "d"
- 懒惰: "{m,n}?", "{m,}?", "??", "*?", "+?"
(d)(\w+?) "\w+?" 将尽可能少的匹配第一个 "d" 之后的字符,结果是:"\w+?" 只匹配了一个 "x"
(d)(\w+?)(d) 为了让整个表达式匹配成功,"\w+?" 不得不匹配 "xxx" 才可以让后边的 "d" 匹配,从而使整个表达式匹配成功。因此,结果是:"\w+?" 匹配 "xxx"
- 分组
var test = '([1-2])([a-z])';test.replace(reg,function(r0,r1){
console.log(r1);//可用r0,r1进行任意操作
console.log(RegExp.$1);//等价r1
});
0 0
- javascript之正则表达式
- javascript之正则表达式
- javascript之正则表达式
- JavaScript之正则表达式
- javascript之正则表达式
- JAVAscript之正则表达式
- javascript之正则表达式
- JavaScript之正则表达式
- JavaScript之正则表达式
- JavaScript之正则表达式
- JavaScript之正则表达式
- JavaScript之正则表达式
- JavaScript之正则表达式
- javascript之正则表达式
- javascript之正则表达式
- JavaScript之正则表达式
- javaScript之正则表达式
- Javascript之常用正则表达式
- Windows下DVWA安装指南
- HTML常用标签整理(d类)
- cJSON 解析JSON实例
- 【深度学习】caffe结构解析(一)
- Android应用程序的自动更新升级(自身升级、通过tomcat)
- javascript之正则表达式
- 信息传递(NOIP2015提高组Day1T2)
- Python中使用不同编码读写txt文件详解
- Hadoop学习笔记(二)——MapReduce
- 常见对象_StringBuffer类的构造方法
- Java之异常处理与工具类
- freq 结构体
- 二元成员函数适配器
- Hibernate 安装配置