正则表达式

Posted fwl8888

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了正则表达式相关的知识,希望对你有一定的参考价值。

正则表达式
1、什么是正则表达式: 
能让计算机读懂的字符串匹配规则。

2、正则表达式的写法:
var re=new RegExp(规则, 可选参数);
var re=/规则/参数;

3、规则中的字符 
1)普通字符匹配:
如:/a/ 匹配字符 ‘a’,/a,b/ 匹配字符 ‘a,b’

2)转义字符匹配:
d 匹配一个数字,即0-9
D 匹配一个非数字,即除了0-9
w 匹配一个单词字符(字母、数字、下划线)
W 匹配任何非单词字符。等价于[^A-Za-z0-9_]
s 匹配一个空白符
S 匹配一个非空白符
 匹配单词边界
B 匹配非单词边界
. 匹配一个任意字符,除了换行符‘
’和回车符‘
’
1 重复子项

4、量词:对左边的匹配字符定义个数 
? 出现零次或一次(最多出现一次)
+ 出现一次或多次(至少出现一次)
* 出现零次或多次(任意次)
{n} 出现n次
{n,m} 出现n到m次
{n,} 至少出现n次

5、任意一个或者范围 
[abc123] : 匹配‘abc123’中的任意一个字符
[a-z0-9] : 匹配a到z或者0到9中的任意一个字符

6、限制开头结尾 
^ 以紧挨的元素开头
$ 以紧挨的元素结尾

7、修饰参数:
g: global,全文搜索,默认搜索到第一个结果接停止
i: ingore case,忽略大小写,默认大小写敏感
m: multiple lines,多行搜索(更改^ 和$的含义,使它们分别在任意一行对待行首和行尾匹配,而不仅仅在整个字符串的开头和结尾匹配)

8、常用函数 
1、test
用法:正则.test(字符串) 匹配成功,就返回真,否则就返回假

2、search
用法:字符串.search(正则) 匹配成功,返回位置,否则返回-1

3、match
用法: 字符串.match(正则);匹配成功,就返回匹配成功的数组,否则就返回null

4、replace
用法:字符串.replace(正则,新的字符串) 匹配成功的字符去替换新的字符

正则默认规则 
匹配成功就结束,不会继续匹配,区分大小写

 

以上是关于正则表达式的主要内容,如果未能解决你的问题,请参考以下文章

markdown 正则表达式模式片段

正则表达式匹配特定的 URL 片段而不是所有其他 URL 可能性

循环通过 python 正则表达式匹配

asp.net 使用正则表达式验证包含打开/关闭括号片段的属性字符串

攻破难啃的骨头-正则表达式(转)

正则表达式的贪婪和非贪婪模式