创建方法
使用RegExp对象
var regexp = new RegExp(/123/);
使用字面量创建
var reg2 = /456/;
检测是否符合正则表达式的方法(test)
常用语法
1:匹配多个字符(量词符)
# 表示匹配3个连续的a var reg = /a{3}/; # 表示匹配3个连续的ab var reg = /(ab){3}/; # 表示b出现1到3次 var reg = /ab{1,3}c/; # 表示b出现3次以上 var reg = /ab{3,}c/; # 表示b至少出现1次 var reg = /ab+c/; # 表示b出现0次或者多次 var reg = /ab*c/; # 表示b出现0次或者1次 var reg = /ab?c/; # 表示b出现1次或者多次 var reg = /ab+c/;
2:匹配一个字符串是否以a开头或结尾
# 是否以a开头 var reg = /^a/; # 是否以a结尾 var reg = /a$/; # 以a开头或者以a结尾 var reg = /^a|a$/;
使用正则匹配手机号
手机号应该满足的几点规则:
- 应该是以1开头
- 总共11位
- 第二位是3-9
- 最后一个是数字结尾
var reg = /^1[3-9][0-9]{9}$/;
3:明白两种匹配模式
3.1:全局匹配
使用字母g(global)
3.2:忽略大小写
使用字母i(ignore)
4:匹配 “或” ( [] 是多选一)
# 匹配a或者b var reg = /a|b/; # 第二种写法 var reg = /[ab]/; # 匹配A-z中的任意一个 var reg = /[A-z]/;
5:匹配 “除了”
# 匹配除了a或者b的,也就是说一个字符串不带a并且不带b的返回True var reg = /[^ab]/;
6:匹配除了换行之外的任意字符
var reg = /./;
7:使用转义字符表示字符 .
var reg = /\./;
在构造函数里两个\才代表一个\
8:匹配数字,字母,下划线
var reg = /\w/;
9:匹配除了数字,字母,下划线
var reg = /\W/;
10:匹配 “数字” 和“除了数字”
# 匹配数字 var reg = /\d/; # 匹配除了数字 var reg = /\D/;
11:匹配空格和除了空格
# 匹配空格 var reg = /\s/; # 匹配除了空格 var reg = /\S/;
12:匹配单词边界除了单词边界
# 假如你想匹配child这个单词 var reg = /\bchild\b/; # 除了单词边界,则是将b换成B
13:取反
15:使用美元符$改变字符顺序