正则表达式
正则表达式用于定义一些字符串的规则
计算机可以根据正则表达式来检查一个字符串是否符合规则
或者将字符串中符合规则的内容提取出来
正则表达式语法
方法1:构造函数创建正则
var 变量 = new RegExp("正则表达式","匹配模式");
在构造函数中可以传递一个匹配模式作为第二个参数
可以是
i 忽略大小写
g 全局匹配模式
m 多行搜索,搜索时识别换行符
这个正则表达式可以来检查一个字符串中是否含有a
var reg = new RegExp("a","i");
方法2:字面量创建正则
使用字面量来创建正则表达式
语法:var 变量 = /正则表达式/匹配模式
边界: ^ 以xxx开始
$以xxx结束
\b单词边界
/D非单词边界
量词: ?:出现0次或1次
+:出现1次或多次
*:出现0次或多次
{n}:指定出现n次
{n,m}:出现n到m次
反向引用: 使用$n的形式引用模式中分组匹配到文本,n为索引,从1开始
忽略分组:使用?:
被忽略的分组不会进行编号
正向前瞻:(?=)
负向前瞻:(?!)
var reg = /a/i;
使用字面量的方式创建更加简单
使用构造函数创建更加灵活
/*
创建一个正则表达式检查一个字符串是否有字母
*/
/*
[]里的内容也是或的关系
[ab] == a|b
[a-z] 任意小写字母
[A-z] 任意字母
[0-9] 任意数字
*/
var reg = /[A-z]/i;
//检查一个字符串中是否有abc 或adc 或aec
reg = /a[bde]c/
//除了ab
reg = /[^ab]/
console.log(reg.test());
正则表达式的方法
test()
- 使用这个方法可以用来检查一个字符串是否符合正则表达式的规则
如果符合则返回true,否则返回false
var str = "a";
var result = reg.test(str);
console.log(result); //true