- 正则表达式用于定义一些字符串的规则,计算机可以根据正则表达式来检查一个字符串是否符合规则,或者将字符串中符合规则的内容提取出来。
- 正则表达式也是一个对象,使用typeof检查正则对象,会返回object
- 在正则表达式中严格区分大小写
创建正则表达式对象
在构造函数中可以传递一个匹配模式作为第二个参数。可以是i(忽略大小写),g(全局匹配模式)
语法:var 变量 = new RegExp("正则表达式","匹配模式");
正则表达式的test()方法
使用这个方法可以用来检测一个字符串是否符合正则表达式的规则,如果符合则返回true,如果不符合则返回false
语法:正则对象.test(检测的字符串);
var reg = RegExp("a","i");
//这个正则表达式用于检测一个字符串中是否含有a或A
var str = "a";
console.log(reg.test(str));
//true
console.log(reg.test("a");
//true
console.log(reg.test("dfgabc");
//true
使用字面量来创建正则表达式
使用字面量的方式创建更加简单,而使用构造函数的方式创建更加灵活
语法:var 变量 = /正则表达式/匹配模式;
var str = "abcdefhig";
var reg = /a/i;
console.log(reg.test("str"));
//创建一个正则表达式,检测字符串中是否含有a,忽略大小写
var reg = /ab/i;
console.log(reg.test("str"));
//创建一个正则表达式,检测字符串中是否含有ab,忽略大小写
//ba或a...b都会返回false
var reg = /a|b/i;
console.log(reg.test("str"));
//创建一个正则表达式,检测字符串中是否含有a或b,忽略大小写
//使用|表示或
var reg = /[ab]/i;
//[ab]==a|b
var reg = /[a-z]/i;
//[a-z]表示任意小写字母
//[A-Z]表示任意大写字母
//[A-z]表示任意字母
//[0-9]表示任意数字
var reg = /a[bcd]e/;
console.log(reg.test("str"));
//创建一个正则表达式,检测字符串中是否含有abe或ace或ade
var reg = /[^ab]/;
console.log(reg.test("str"));
//创建一个正则表达式,检测字符串中除了ab是否还含有其他字符
//true