目录
1.什么是正则表达式:描述字符串的“构成模式”
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<script>
var regexp=/^\d{6}$/;
var str1='123456';
var str2='1234567';
var str3='1234b56';
console.log(regexp.test(str1));
console.log(regexp.test(str2));
console.log(regexp.test(str3));
var regexp1=/^d{6}%/;
// 注意new的话要用2个\\
// 所以能用方法1尽量就用方法1
var regexp2=new RegExp('^\\d{6}$');
var str='555666';
console.log(regexp1.test(str));
console.log(regexp2.test(str));
console.log(typeof regexp1);//object
console.log(typeof regexp2);//object
</script>
</body>
</html>
2.元字符:一位指定类型的字符
2.1 使用举例
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<script>
var regexp1=/^\d\d\d-\d\d\d\d-\d\d\d$/;
var str1='444-5555-666';
console.log(regexp1.test(str1));
var regexp2=/^\w\w\w-\w\w\w\w-\w\w\w$/;
var str2='abc-__abc-123';
// 123.45^67#89
var regexp3=/^\d\d\d\.\d\d\^\d\d\#\d\d$/;
</script>
</body>
</html>
2.2 字符的转义
2.3 方括号表示法
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<script>
// 验证某字符串是否为5位字母大小写均可
var str='abced';
console.log(/^[a-zA-Z]{5}$/.test(str));
// 验证某字符串是否为5位,且仅有小写字母、点构成
var str2='mnp..';
console.log(/^[a-z\.]{5}$/.test(str2));
// 验证某字符串是否为4位小写字母,且最后一位不能是m字母
var str3='abcd';
console.log(/^[a-z]{3}[a-ln-z]$.t/.test(str3));
</script>
</body>
</html>
2.4 量词
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<script>
// 手机号
var regexp=/^1\d{10}$/;
// 字母开头,中间任意位数字,结尾字母
var regexp2=/^[a-zA-Z]\d+[a-zA-Z]$/;
// 网址规则
var regexp3=/^www\.\w+\.com(\.cn)?$/;
</script>
</body>
</html>
2.5 修饰符
3.正则表达式相关方法
3.1 test()和exec()
4.字符串相关方法