1、什么是正则表达式?
正则表达式是对字符串操作的一种逻辑公式,就是用事先定义好的一些特定字符、及这些特定字符的组合,组成一个“规则字符串”,这个“规则字符串”用来表达对字符串的一种过滤逻辑。用我们自己的话来说: 正则表达式用来校验字符串是否满足一定的规则的公式
2、正则表达式的格式以及验证方式
JavaScript中的正则的格式://
var reg_username = /^\w{6,15}$/;
//在两个"/"中编写正则表达式
JavaScript中正则的验证方式:boolean 正则表达式.test(数据)
3、正则表达式的语法
1.正则表达式示例:
/a/------->表示要验证的字符串中必须包含a
var username = "abcda";
var reg_username = /a/;
console.log(reg_username.test(username));//true
//验证username中包含a
/^a/–>表示要验证的字符串必须以a开头
var username = "abcda";
var reg_username = /^a/;
console.log(reg_username.test(username));//true
//验证username中以a开始
/a$/–>表示要验证的字符串必须以a结束
var username = "abcda";
var reg_username = /a$/;
console.log(reg_username.test(username));//true
//验证username中以a结束
/^a$/–>表示要验证的字符串必须是a
在正则表达式中,^ 表示开始符,\ $ 表示结束符
var username = "abcda";
var reg_username = /^a$/;
console.log(reg_username.test(username));//false
//验证username中必须为a
2.正则字符集
(1) 正则字符集表示要验证的字符串中某个位置能够出现的字符,一个字符集只能匹配一个位置能够出现的字符
预定义字符集:
.------>匹配除换行符以外的其他字符
\s----->匹配空格
\w---->匹配数字字母下划线,[0-9a-zA-Z_]
\d----->数字,[0-9]
此外:
------->字符转义
|------->或
(2) 自定义字符集
将当前位置能够出现的字符写在[]中
若这些字符具有连续性,中间可以使用-连接
若当前位置只能出现一个固定的字符,只需要将这个字符写在当前位置即可
//验证年龄,18-99
var reg_age = /^(1[89]|[2-9]\d)$/;
var age = 12;
console.log(reg_age.test(age));
(3)重复次数
*---->表示重复任意次
?---->表示重复0次或1次
+ —>表示至少重复一次
{m,n}---->表示重复m到n次
{m,}---->表示至少重复m次
{m}---->表示必须重复m次