欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  web前端

教你如何使用JavaScript正则表达式

程序员文章站 2022-05-17 18:50:29
...
主题:JavaScript正则表达式

定义正则表达式:

Var reg_pattern = new RegRxt(“a\d”); //意思是 a后面跟着有数字

Var reg_pattern = /a\d/ ;

String对象相关的正则表达式方法

名称

说明

例子

Macth(regExp)

指定的正则表达式来搜索字符串,如果找到函数返回一个数组,没有找到返回Null

test.html

Replacre(regExp,replaceText)

将原字符串中与正则表达式regExp匹配的子字符串全部替换为replaceText,返回新的字符串。

test.html

Search(regExp)

搜索字符串,与macth(regExp)不同的是,只返回第一次匹配出现的位置索引,否则返回-1

字符类:

字符列表:在方括号内指定一个或者多个字符组成的字符列表,与字符列表中任意字符

匹配,都被认为是匹配的,例如 [abc],表示匹配a 或者 b 或者 c 中的任意一个。但每次匹配只能匹配列表中的一个字符,而不是多个

反向列表:反向列表指匹配列表中指定字符以外的所有字符。反向列表通过在列表前加

“^” 符号进行定义。例如 [^abc] 表示匹配 a 、b 、c 字符以外的所有字符。

字符范围:对于连续的字符列表,例如[1234567] 或者 [abcdefg] 这类,可以采用简单

的方式表示,这种方式称为字符范围。字符范围用 “-” 符号将起始字符与结束字

符连接起来,表示起始字符与结束字符之间的所有字符。例如:[a-z] 表示a~z之

间的全部小写字符

反向范围:在字符前面加上 ”^” 符号,则表示匹配该字符范围以外的任意字符。

与定义字符类

字符类

含义

·

匹配除换行符\n和回车字符之外的任何单个字符,等效于[^\n\r]

\d

匹配一个数字字符,等效于[0-9]

\D

匹配一个非数字字符,等效于[^0-9]

\w

匹配包括下划线的任何单个字符,包括A~Z,a~z,0~9和下滑线 ”_”,等效于[a-zA-Z0-9_]

\W

与\w互补,匹配任何非单个字符,等效于[^a-zA-Z0-9_]

\s

匹配任何Unicode空白字符,包括空格,制表符、换页符等,等效于[\f\t\n\r]

\S

匹配任何非空白字符

\b

退格字符Backspace

重复次数(数量词)

*:表示对前面表达式的匹配出现零次或多次

例如:

Var reg_pattern = /bo*/;

将匹配下面的各字符串:

b

bo

booo

+:表示对前面表达式的匹配连续出现一次或多次。

例如:

Var reg_pattern = /bo+/;

将匹配下面的各字符串:

bo

booo

{n}:n为非负整数。表示对前面表达式的匹配出现确定的 n 次。

例如:

Var reg_pattern = /bo{3}/;

只能匹配”booo”。

{n,}:n为非负整数。表示对前面表达式的匹配至少出现 n 次,即出现 n 次

或者多于 n 次。

例如:

Var reg_pattern = /[A-Z]{3,}/g;

匹配连续出现的3 个或者多于3个的大写字母。

{n,m}:n和m均为非负整数。其中 n < m。表示最少匹配 n 次且最多匹配 m 次。

或者多于 n 次。

表达式:

Var reg_pattern = /[A-Z]{3,5}/g;

匹配连续出现的3 到 5 个大写字母。

例如搜索以 ”133” 开头的手机电话的正则表达式:

Var reg_pattern= /133\d{8}/g;

边界符:

^:表示字符串开始位置,在多行匹配中,表示一行的开始位置。符号本身并

不匹配任何字符

$:表示字符串结束位置,在多行匹配中,表示一行的结束位置。符号本身并

不匹配任何字符

\b:表示一个单词(而非字符)边界,也就是单词和空格之间的位置,

相关标签: JavaScript