元字符
\b 单词边界
. 任意字符
字符类
[abc] a或者b或者c
字符类取反 反向类
[^abc] 不是a或者b或者c
范围类
[a-z] 从a到z的任意字符
[a-zA-Z] 从a到z、A到Z的任意字符
'2016-08-12'.replace(/[0-9-]/g, 'A')
预定义类
边界
^ 开始
$ 结束
\b 单词边界
\B 非单词边界
'This is a boy.'.replace(/\Bis\b/g,'0')
\d 数字
\d? 0次或1次
\d+ 1次或多次
\d* 0次或多次
\d{3} 3次
\d{3,5} 3到5次
\bis\b \b单词边界
[/-] /或者-
去掉http协议的jpg文件的协议头
http://host.img.com/images/aa.jpg
http:(\/\/.+\.jpg)
$1
日期替换
2006/02/03
1998-03-06
^(\d{4})[/-](\d{2})[/-](\d{2})$
$2-$3-$1
贪婪模式
console.log('12345678'.replace(/\d{3,6}/g, 'X')); //X78 默认贪婪模式,尽可能多的匹配
非贪婪模式
量词后面加上?
console.log('12345678'.replace(/\d{3,6}?/g, 'X')); //XX78 非贪婪模式