javascript学习笔记--正则表达式
2018-10-27 本文已影响0人
持续5年输出bug
正则表达式:RegExp用以定义一些字符串的规则,计算机可以根据该规则检查是否符合。
创建一个正则表达式对象的语法:
1.构造函数形式:
var 变量=regRegExp("正则表达式","匹配模式")
2.字面量形式:
var 变量=/正则表达式/匹配模式
如以下表示检查是否含有字母a,匹配模式为i,即执行对大小写不敏感的匹配。
var reg= regRegExp("a","i");
(如 console.log(typeof a);打印结果为Object正则表达式也是一个对象)
正则表达式的三种匹配模式:
- i: 忽略大小写
- g:全局匹配,即查找所有匹配后才停止
- m:多行匹配
可以一起使用如 var reg= RegExp("a","ig")表示全局匹配且忽略大小写
检查是否符合正则表达式的方法
test();
如检查是否含有a字母
var reg= RegExp("a","i");
var s= reg.test("abc");
var b= reg.test("Abc");
var n= reg.test(123);
console.log(s); //ture
console.log(b); //ture
console.log(n); //false
因为匹配模式为i,即忽略大小写所以 var b= reg.test("Abc");返回了ture,如果设置匹配模式,则为false:
var reg= RegExp("a","i");
var s= reg.test("abc");
var b= reg.test("Abc");
console.log(s); //ture
console.log(b); //false
正则表达式的几种表示形式:
1.包含:检查是否含有a,不会检查出现的顺序
var reg= RegExp("a","i");
3.除了(不包含):检查是否不包含a,不会检查出现的顺序
reg=/^a/i;
reg=/^[ab]/i;
2.检查是否有ab,在这里ab被看成了一个整体
reg =/ab/i;
-
或:|,或者[] [ab]==a|b 检查是否有a或者b,这里a和b是两个,关系为或的关系
var reg =RegExp("a|b","i");
var reg =RegExp([ab],"i"); var s= reg.test("abc"); console.log(s); //打印ture
4.检查是否有字母,任意小写字母[a-z],任意大小写字母[A-z]
var reg=/[a-z]/i;
var reg=/[A-z]/;
5.检查字符串是否有a*c
var reg=/a[ahe]c;
6.检查是否含有数字[0-9]
var reg=/[0-9]/;