yikai.shao Backend Dev Engineer

JavaScript正则表达式

2017-04-24

创建正则表达式对象

方式一
var reg = new RegExp();
var reg = new RegExp('abc'); //简单的正则表达式
var reg = new RegExp('abc','i'); // 第二个参数表示匹配时不区分大小写

g 全文查找 i 忽略大小写 m 多行查找

方式二
var reg = /abc/g;

正则表达式对象的方法

1.test —— 返回一个 Boolean 值。检测字符串中是否存在符合规则的字符串,如果存在则返回true,否则就返回false。

2.exec —— 返回一个 Array 值。用正则表达式模式在字符串中运行查找,并返回包含该查找结果的一个数组。

3.match —— 找到一个或多个正则表达式的匹配。

4.replace —— 替换与正则表达式匹配的子串。

5.search —— 检索与正则表达式相匹配的值。

6.split —— 把字符串分割为字符串数组。

匹配单个字符

任意单个字符
[abc]、[9]、[_ciuopjs]

范围
[a-z]、[0-9]

排除
[^a]、[^a-zA-Z0-9_]

转义字符\

\d [0-9] (data) 数字

\w [a-zA-Z0-9_] (word) 字母、数字、下划线

\s [\n\r\t\f\x0B] (space) 所有空元素

\D [^0-9] 和\d相反

\W [^a-zA-Z0-9_] 和\w相反

\S [^\n\r\t\f\x0B] 和\s相反

. 匹配除换行符之外的任何一个字符

出现的次数

{n,m} 最小n次,最大m个

{n,} 最小n次

{,m} 最大m次

{n} 正好n次

* 相当于{0,}

? 相当于{0,1}

+ 相当于{1,}

例子

邮箱

中文

手机号


下一篇 PHP依赖注入

概要