正则表达式: 验证表单 查找 查找替换
正则表达式的定义方式 : 1、 通过对象原型定义 2、通过定界符定义
正则表达式:定界符 // 原子 元字符 模式修正符 函数
-->
//1、 通过对象原型定义
var pattern = new RegExp('\d');
console.log(pattern)
console.log(typeof pattern);;//object
// 2、通过定界符定义 /正则表达式的规则/
var pattern = /\d/;
console.log(pattern);
console.log(typeof pattern);//object
var pattern = /a/;
var str = 'a';
// exec()检测是否符合正则表达式,若符合则返回符合的内容,不符合则返回null
var res = pattern.exec(str);
console.log(res)
/*
原子:每一个独立字符
[可选的内容]代表一个原子
[0-9]代表数字0-9
[0-9a-zA-Z_]代表数字0-9 所有的字母以及下划线
{}放在原子之后,代表重复匹配前面的原子的次数
{m}重复匹配前面的原子m次
{m,}重复匹配前面的原子至少m次
{m,n}重复匹配前面的原子至少m次,最多n次 例如{0,1}
*/
// 必须以什么开头 ^ var pattern = /^abc/;
// 必须以什么结尾 $ var pattern = /abc$/;
// 严格模式 var pattern = /^abc$/;
特殊的原子 \d 代表[0-9] \D 代表[^0-9] \w 代表[0-9a-zA-Z_] \W 代表[^0-9a-zA-Z_] \s 匹配所有的空白符(空格 换行 制表符)
\S 匹配除了空白符以外的任意字符
// 0~120
var pattern = /^\d$|^[1-9]\d$|^1[0-1]\d$|^120$/;
/*
. 除了换行符以外的任意字符
*重复匹配前面的原子任意次 相当于{0,}
?重复匹配前面的原子至少0次,最多1次,相当于{0,1}
+重复匹配前面的原子至少一次
*/
// -99~99
var pattern = /^-?\d$|^-?[1-9]\d$/;
// 贪婪模式
var pattern = /
.*/;//
红旗
彩旗
// 解除贪婪模式
var pattern = /
.*?/;//
红旗
//电话号码 1 3(0-9) 147 15(0-9) 17(0123567) 18(0-9) 19(0-9)
var pattern = /^1[3589]\d{9}$|^147\d{8}$|^17[0-35-7]\d{8}$/;
// 网址
var pattern = /^(http|https|ftp):\/\/www\.(.*?)\.(com|cn|edu|top|xyz)$/;
模式修正符
函数
匹配中文