抱歉,您的浏览器无法访问本站

本页面需要浏览器支持(启用)JavaScript


了解详情 >

正则表达式简介

定义:正则表达式用于定义一些字符串的规则。

作用:计算机可以根据正则表达式,来检查一个字符串是否符合指定的规则;或者将字符串中符合规则的内容提取出来。

如果你想查看正则更多的内容,可以查阅官方文档关于 RegExp 这个内置对象的用法。

创建正则表达式的对象

方式一:使用构造函数创建正则表达式的对象

语法:

1
2
3
var 变量 = new RegExp("正则表达式"); // 注意,参数是字符串

var 变量 = new RegExp("正则表达式", "匹配模式"); // 注意,两个参数都是字符串

备注:RegExp的意思是 Regular expression。使用typeof检查正则对象,会返回object。

上面的语法中,既可以传一个参数,也可以传两个参数。

创建了正则表达式的对象后,该怎么使用呢?大致分为两个步骤:

  • (1)创建正则表达式的对象 reg。

  • (2)使用 reg 的test() 方法,判断指定字符串是否符合规则。

我们来看看下面的例子。

1、传一个参数时

构造函数 RegExp 中,可以只传一个参数。

代码举例:

1
2
3
4
5
6
7
8
9
var reg = new RegExp("a"); // 定义一个正则表达式:检查一个字符串中是否含有 a

var str1 = "qianguyihao";
var str2 = "smyh";

// 通过 test()方法,判断字符串是否符合 上面定义的 reg 规则
console.log(reg.test(str1)); // 打印结果:true
console.log(reg.test(str2)); // 打印结果:false

注意,上面的例子中,我们是先定义了一个正则表达式的规则,然后通过正则表达式的test()方法来判断字符串是否符合之前定义的规则。

正则表达式的test()方法:

1
myReg.test(str); // 判断字符串 str 是否符合 指定的 myReg 这个正则表达式的规则

解释:使用test()这个方法可以用来检查一个字符串是否符合正则表达式的规则,如果符合则返回true,否则返回false

2、传两个参数时:匹配模式 【重要】

构造函数 RegExp 中,也可以传两个参数。我们可以传递一个匹配模式作为第二个参数。这个参数可以是:

  • i 忽略大小写。这里的 i 指的是 ignore。

  • g 全局匹配模式。这里的 g 指的是 global。

代码举例:

1
2
3
4
var reg = new RegExp('A', 'i');
var str = 'qiangu';

console.log(reg.test(str)); // 打印结果:true

方式二:使用字面量创建正则表达式

我们可以使用字面量来创建正则表达式。