慕课网-JavaScript正则表达式-学习笔记
-
什么是正则表达式
Regular Expression,使用单个字符来描述、匹配一系列符合某个句法规则的字符串 -
一个小工具:将正则表达式转换为铁路图https://regexper.com
-
REGEXP对象:
两种实例化方法:字面量,构造函数
(1)匹配is:var reg = /\bis\b/g;
\b表示单词边界,g表示全局匹配(global)
(2)var reg = new RegExp('\\bis\\b','g')
\需要转义
修饰符:
g:global,全局匹配
i:ignore case,忽略大小写
m:multiple lines,多行匹配(匹配每行的开头时) -
元字符
含义:在正则表达式中有特殊含义的非字母字符(字符类(转义字符)、范围类、预定义类)
(大写字母表示取反)
边界匹配字符:\b(border)
e.g.ab+数字+任意字符:ab\d. -
量词
6.贪婪模式与非贪婪模式
贪婪:默认情况,尽可能多地匹配
非贪婪:尽可能少地匹配,在量词后(大括号后)加上?即可
'12345678'.replace(/\d{3,6}/g,'X')//"X78"
7.分组:使用()
8.或:|
9.反向引用:
2015-12-25 => 12/25/2015
'2015-12-25'.replace(/(\d{4})-(\d{2})-(\d{2})/g.'$2/$3/$1')
10.忽略分组:忽略分组
11.前瞻(JS不支持后顾):前瞻