您的位置:首页 > 其它

初学正则表达式

2016-04-14 19:33 337 查看

初学正则表达式

首先:献上DOC MDN 正则表达式

正则表达式是被用来匹配字符串中的字符组合的模式。在JavaScript中,正则表达式也是对象。这种模式可以被用于 RegExp 的 exec 和 test 方法以及 String 的 match、replace、search 和 split 方法。本章介绍的是 Javascript 的正则表达式。

创建正则表达式:

正则表达式字面量

var re = /abc/;


调用RegExp构造函数

var re = new RegExp("abc");


常见的记号:

\ 转义字符

^ 以xx开头

$ 以xx结束

* 0至多个 {0, }

+ 1至多个 {1, }

? 0或1 {0, 1}

. 匹配除换行符(\n)之外的单个字符,如果要匹配包括 \n 在内的任意字符,可以使用[\s\S]等

(x) 匹配并且记住匹配项’x’,也叫捕获括号

(?:x) 匹配’x’但不记住匹配项

x=(?=y) 匹配’x’仅当x后面跟着y时

x=(!=y) 匹配’x’仅当x后面不跟着y时

x|y 匹配x或y

{n} 匹配前面一个字符刚好发生了n次

{n, m} 匹配前面一个字符 >=n && <= m 次

[xyz] 一个字符集合,匹配方括号中的任意字符,其内部可以使用-表示范围,如a-z

[^xyz] 一个反向字符集,匹配任何没有包含在[]中的字符

[\d] 匹配一个数字,等价于[0-9]

[\D] 匹配一个非数字,等价于 [^0-9]

\s 匹配一个空白符,包括空格、制表符、换页符、换行符和其他 Unicode 空格

\S 匹配一个非空白字符

\w 匹配任意基本拉丁字母表中单词(字母数字下划线)字符。匹配一个单字字符(数字、字母或下划线),等价于[A-Za-z0-9_]

\W 匹配一个非单字字符(数字、字母或下划线),等价于[^A-Za-z0-9_]

\b 匹配一个单词的边界,简而言之,就是位于字符\w和字符\W之间的位置,或位于字符\w和字符串的开头或结尾之间的位置(但需要注意的是在字符组内[\b]匹配的是退格符)

\B 匹配非单词边界的位置

方法 描述

exec 一个在字符串中执行查找匹配的RegExp方法,它返回一个数组(未匹配到则返回null)。

test 一个在字符串中测试是否匹配的RegExp方法,它返回true或false。

match 一个在字符串中执行查找匹配的String方法,它返回一个数组或者在未匹配到时返回null。

search 一个在字符串中测试匹配的String方法,它返回匹配到的位置索引,或者在失败时返回-1。

replace 一个在字符串中执行查找匹配的String方法,并且使用替换字符串替换掉匹配到的子字符串。

split 一个使用正则表达式或者一个固定字符串分隔一个字符串,并将分隔后的子字符串存储到数组中的String方法。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: