正则学习
类
字符类[ ]
合乎某些特色的一个对象
/[ABC]/ 示意匹配ABC 中的一个即可
- 反向类[^]在中括号中加^
例:[ ^A ] 就是匹配不是A的字符
范畴类[A-Z]
能够匹配A-Z内的任意一个字符
预约义类
- 预约义字符:
\d 示意数字
- 边界字符
\b 示意边界
^在[]外示意匹配结尾的意思
$示意匹配结尾的意思
量词
{n} 匹配字符串长度为n
{m,n} 匹配字符串长度最小为m,最大为n
{m,} 匹配字符串长度最小为m,最大为无穷
{0,n} 匹配字符串长度最小为空,最大为n
+ 呈现次数>=1
* 现次数>=0
? 呈现次数 0或者1
. 能够匹配任意字符,除了空白字符中的换行符\n
贪心模式
- 12345678.replace(/\d{3,6}/,‘x’) 输入X78
非贪心模式
只须要在量词前面增加一个问号
- 12345678.replace(/\d{3,6}?/,‘x’) 输入XX78 尝试起码可能的匹配
分组
应用()能够使量词最用与分组而非紧挨着它的单词
‘a1b2c3d4’.replace(/([a-z]\d){3}/g),‘x')
输入xd4
或
a|b
反向援用
$援用(捕捉)
2019-12-05 替换成12/05/2019
'2019-12-05'.replace('/(/d{4}-(\d{2})-(/d{2}))/g','$2/$3/$1')
$是以分组捕捉
不想捕捉分组的时候只须要在分组内加上?:
(?:gray).(ok) 这里$1是ok
前瞻和后顾
待学习
本来含意的字符
待学习
元字符(代表非凡含意的字符)
待学习
XMind - Trial Version