天天看点

JavaScript RegExp对象 (正则表达式)目录:

目录:

1、什么是 RegExp?

2、RegExp语法

3、使用字符串方法

4、search() 方法使用正则表达式

5、replace() 方法使用正则表达式

6、各种匹配字符

1、什么是 RegExp?

RegExp 是正则表达式的缩写。

当您检索某个文本时,可以使用一种模式来描述要检索的内容。RegExp 就是这种模式。

正则表达式可以是一个简单的字符,或一个更复杂的模式。

正则表达式可用于所有文本搜索和文本替换的操作。

2、语法

正则表达式主体/修饰符(可选)

其中修饰符是可选的。

3、使用字符串方法

在 JavaScript 中,正则表达式通常用于两个字符串方法 : search() 和 replace()。

search() 方法 用于检索字符串中指定的子字符串,或检索与正则表达式相匹配的子字符串,并返回子串的起始位置。

replace() 方法 用于在字符串中用一些字符替换另一些字符,或替换一个与正则表达式匹配的子串

4、search() 方法使用正则表达式

实例

使用正则表达式搜索 “Runoob” 字符串,且不区分大小写:

var str = “Visit Runoob!”;

var n = str.search(/Runoob/i);

输出结果为:6

5、replace() 方法使用正则表达式

实例

使用正则表达式且不区分大小写将字符串中的 Microsoft 替换为 Runoob :

var str = document.getElementById(“demo”).innerHTML;

var txt = str.replace(/microsoft/i,“Runoob”);

结果输出为: Visit Runoob!

注意:

正则表达式参数可用在以上方法中 (替代字符串参数)。 正则表达式使得搜索功能更加强大(如实例中不区分大小写)。

修饰符

修饰符 描述
i 执行对大小写不敏感的匹配。
g 执行全局匹配(查找所有匹配而非在找到第一个匹配后停止)。
m 执行多行匹配。

基本通配符

元字符 描述

.

查找单个字符,除了换行和行结束符。

\w

匹配单词字符。

\d

匹配数字。

\s

匹配空白字符。

\b

匹配单词边界。

\n

匹配换行符。

\f

匹配换页符。

\r

匹配回车符。

\t

匹配制表符。

$

匹配字符串结束。

^

匹配字符串开始。

\0

匹配 NUL 字符。

\v

匹配垂直制表符。

\xxx

匹配以八进制数 xxx 规定的字符。

\xdd

匹配以十六进制数 dd 规定的字符。

\uxxxx

匹配以十六进制数 xxxx 规定的 Unicode 字符。

重复限定符

元字符 限定规则

n+

将n重复一次或更多次

n*

将n重复零次或更多次

n?

将n重复一次或一次

n{X}

将n重复x次

n{X,Y}

将n重复x~y次

n{X,}

j将n重复x次或者更多次。

^n

查找回车符。

?=n

查找制表符。

\0

查找 NUL 字符。

\v

查找垂直制表符。

\xxx

查找以八进制数 xxx 规定的字符。

\xdd

查找以十六进制数 dd 规定的字符。

\uxxxx

查找以十六进制数 xxxx 规定的 Unicode 符。

正则表达式表单验证实例:

代码引用 width="100%" height="300" src="https://c.runoob.com/iframe/2873" allowfullscreen="allowfullscreen">

选择符`[]`

选择符

[]

:表示从普通字符组成的集合中选择一个字符

例如:模式/[abc]/可以匹配a,b,c;

模式/[a-z]/可以匹配a到z任意一个小写字母;

转义符“\”

查找元字符本身,取消字符特殊意义

例如:

\. \* \\

分支符“|”

前后两个分支是“或”关系。

例如:

\(0\d{2}\)[- ]?\d{8}|0\d{2}[- ]?\d{8}

结果:(024)87654321或者024-87654321

解析:

\d{2}

:{2}让

\d

进行了两次(一个任意的两位数);

\)

:为了显示出“()”;

[- ]

:要么匹配

-

要么匹配空格;

[- ]?

:要么匹配

[- ]

的结果要么就不匹配;

d{8}

:{8}让

\d

进行8次

(如有知识性错误或者其他问题请联系本人,谢谢:QQ邮箱:[email protected]"备注CSDN+问题"----------临沂大学软工5班王同学)

继续阅读