正则

快速查阅

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
* 出现0次or无穷   等价于 {0,}

? 出现0次或者一次 等价于 {0,1}

+ 至少出现一次 等价于 {1,}

{3}出现3

{3,} 至少出现3

{3,5}出现35

\bis\b 匹配is 这个单词

\d 匹配数字

正则或者用[/-] 表示或者/ -

^ 开头 $ 结尾

[abc] 匹配a 或者 b 或者 c

[^abc] 匹配不是 a b c

[a-z]匹配a到z的字母

[a-zA-Z] 匹配小写到大写的字母

2018-09-12 /[0-9-]/ 后面在加一个-可以匹配-

. [^\r\n] 除了回车符合换行符之外的所有字符

\d [0-9] 数字字符

\D [^0-9] 非数字符

\s 匹配空白符

\S 非空白符

\w 匹配字母数字 下划线

\W 非单词字符

贪婪模式

‘12345678’.replace(/\d{3,6}/,’x’) 默认正则会按最多匹配

“x78” 结果

非贪婪模式

尽可能少的匹配 一旦匹配成功就不在继续匹配

非贪婪模式只要在量词后面加上?即可

/\d{3,5}?/ 匹配3次

示例

如: <img src="test.jpg" width="60px" height="80px"/>
如果用正则匹配src中内容非懒惰模式匹配
src=”.*”
匹配结果是:src=”test.jpg” width=”60px” height=”80px”
意思是从=”往后匹配,直到最后一个”匹配结束

懒惰模式正则:
src=”.*?”
结果:src=”test.jpg”
因为匹配到第一个”就结束了一次匹配。不会继续向后匹配。因为他懒惰嘛。

分组

() or (|)

匹配 位置

/(?=l)/ 匹配l前面

/(?!l)/ 相反

本文标题:正则

文章作者:luuck

发布时间:2018年08月10日 - 11:08

最后更新:2018年08月24日 - 00:08

原始链接:http://luuck.github.io/2018/08/10/正则/

许可协议: 署名-非商业性使用-禁止演绎 4.0 国际 转载请保留原文链接及作者。

坚持原创技术分享,您的支持将鼓励我继续创作!