正则

正则表达式MDN  https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Guide/Regular_Expressions
正则测试工具   http://tool.oschina.net/regex

<!-- 创建 -->
通过调用RegExp对象的构造函数创建 
var regexp = new RegExp(/123/);
利用字面量创建 正则表达式
var rg = /123/;

<!-- test() 正则对象方法,用于检测字符串是否符合该规则,该对象会返回 true 或 false,其参数是测试字符串。 -->
var rg = /123/;
console.log(rg.test(123));//匹配字符中是否出现123  出现结果为true

<!-- 边界符 -->
^ 表示匹配行首的文本(以谁开始)
$ 表示匹配行尾的文本(以谁结束)

/abc/ 只要包含有abc这个字符串返回的都是true
/^abc/  console.log(reg.test('abcd')); // true
/^abc$/; // 精确匹配 要求必须是 abc字符串才符合规范 以当前abc开头,并且以当前abc结尾 
     console.log(reg1.test('abc')); // true

<!-- 字符类 -->
字符类表示有一系列字符可供选择,只要匹配其中一个就可以了。所有可供选择的字符都放在方括号内。
var rg = /[abc]/; // 只要包含有a 或者 包含有b 或者包含有c 都返回为true
var rg1 = /^[abc]$/; // 三选一 只有是a 或者是 b  或者是c 这三个字母才返回 true
var reg = /^[a-z]$/ //26个英文字母任何一个字母返回 true  - 表示的是a 到z 的范围  
var reg1 = /^[a-zA-Z0-9]$/; // 26个英文字母(大写和小写都可以)任何一个字母或数字返回 true  
var reg2 = /^[^a-zA-Z0-9]$/;  //取反 方括号内部加上 ^ 表示取反,只要包含方括号内的字符,都返回 false 

<!-- 量词符 -->
量词符用来设定某个模式出现的次数。
*     重复0次或更多次
+     重复1次或更多次
?     重复0次或1次
{n}   重复n次
{n,}  重复n次或更多次
{n,m} 重复n到m次

<!-- 括号总结 -->
1.大括号  量词符.  里面表示重复次数
2.中括号 字符集合。匹配方括号中的任意字符. 
3.小括号表示优先级

<!-- 预定义类 -->
预定义类指的是某些常见模式的简写方式
d 匹配0-9之间的任一数字,相当于[0-9]
D 匹配0-9以外的字符,相当于[^0-9]
w 匹配任意的字母,数字,下划线,相当于[A-Za-z0-9]
W 除所有字母,数字,下划线以外的字符,相当于[^A-Za-z0-9]
s 匹配空格(包括换行符,制表符,空格符等),相当于[	
vf]
S 匹配非空格字符,相当于[^	
vf]

<!-- 正则替换replace -->
replace() 方法可以实现替换字符串操作,用来替换的参数可以是一个字符串或是一个正则表达式
原文地址:https://www.cnblogs.com/xm0328/p/13783047.html