正则规则
正则表达式:专门规定字符串中字符*格式规则*的表达式
何时使用:只要定义字符串格式规则,都用正则表达式
1、字符集:规定某*一位*字符可选的备选文字列表
语法:[备选字符列表]
强调:无论备选字符集中有多少个字符,都必须且只能选1个
一个[]只代表
比如:6位数字:[0123456789][0123456789][0123456789][0123456789][0123456789][0123456789]
^ :代表除了xx之外,都行---了解
-:如果备选字符连续,可用-表示“到”
例:[0-9][0-9][0-9][0-9][0-9][0-9] -省略中间连续的部分
例:[A-Za-z] //匹配大小写字母。
正则表达式使用如下语法匹配一个范围内的字符:
语法含义示例
[abc]匹配指定集合内的任意一个字符/[4572]/
[0-9]匹配任意一个数字/[0-9]/
[a-z]匹配任意一个小写字母/[a-z]/
[A-Z]匹配任意一个大写字母/A-Z/
[A-Za-z]匹配任意一个字母
[^abc]匹配不在指定集合内的任意字符
2、预定义字符集:专门表示常用的连续的字符集
\d等效于[0-9]代表一位数字
\w等效于[0-9a-zA-Z_]一位数字、子母或下划线
\s等效于[空字符] :代表一位空字符: 空格,Tab符
.等效于 任意字符
\D,\W,\S --->代表:除了\d,\w或\s ---了解
3、量词:规定一个字符集出现的次数:2种
明确数量:3种:
{min,max}比如:\d{6,8}表示6到8位数字
{min,}代表至少min位 比如:\d{6,}表示至少6位数字
{n}必须n位 比如:\d{6}表示只能6位数字
不确定数量:3种:
?等效于{0,1}表示可有可无,最多1次
*等效于{0,}可有可无,数量不限
+等效于{1,}至少一次 ,数量不限
练习:例:+8613986744136匹配手机号
+86可有可无,最多一次
开头为1
第2位 从3,4,5,7,8选一个
最后必须是9位数字
1、RegExp对象:
封装了正则表达式,提供了利用正则表达式执行验证和查找的API(方法)
什么时候使用:只要利用正则表达式执行验证和查找功能时。
创建:2种
1、var reg=/正则表达式/;
什么时候使用:正则表达式在运行时不会改变
2(了解)、var reg=new RegExp("正则表达式","ig");
什么时候使用:在运行时正则表达式可能被改时
强调:所有\都要改为\\
var str1="\\d{6}"六位数字的规则
如何使用:2种操作:
1、格式验证:var bool=reg.test(str)
补充:指定匹配位置:
可以使用如下字符进行指定位置的匹配:
含义示例
^匹配字符串的开头/^a/
$匹配字符串的结尾/a$/