RegExp对象
正则表达式是用来描述字符的图案的物体。
正则表达式用来进行模式匹配和"search-and-replace"文本的功能。
句法
/ pattern / modifiers ;
例
var patt = /w3ii/i
为例进行了说明:
- / w3ii / i是正则表达式。
- w3ii是一个模式(to be used in a search) 。
- i为改性剂(modifies the search to be case-insensitive) 。
对于一个正则表达式的教程,请阅读我们的JavaScript的RegExp教程 。
修饰符
修饰符用于执行不区分大小写和全局搜索:
修改 | 描述 |
---|---|
i | 执行区分大小写的匹配 |
g | 执行全局匹配(find all matches rather than stopping after the first match) |
m | 执行多行匹配 |
括号
支架用于查找字符的范围:
表达 | 描述 |
---|---|
[abc] | 查找方括号之间的任何字符 |
[^abc] | 找不到括号之间的任何字符 |
[0-9] | 查找方括号之间的任意数字 |
[^0-9] | 查找不括号之间的任何数字 |
(x|y) | 查找指定的任何替代品 |
元字符
元字符是有特殊含义的字符:
元字符 | 描述 |
---|---|
。 | 查找单个字符,除了换行符或行结束 |
\ W | 查找单词字符 |
\ W | 查找非单词字符 |
\ D | 查找数字 |
\ D | 查找非数字字符 |
\ S | 查找空白字符 |
\ S | 查找非空白字符 |
\ b | 找到匹配一个单词的开始/结束 |
\乙 | 找到匹配不是在一个单词的开头/结束 |
\ 0 | 查找NULL字符 |
\ n | 找到一个新的行字符 |
\F | 查找换页符 |
\ r | 查找回车符 |
\ t | 查找制表符 |
符\ v | 查找垂直制表符 |
\ XXX | 查找八进制数XXX指定的字符 |
\ XDD | 查找十六进制数DD指定的字符 |
为\ uXXXX | 查找十六进制数XXXX规定的Unicode字符 |
量词
量词 | 描述 |
---|---|
n+ | 匹配包含至少一个n的任何字符串 |
n* | 匹配包含零和或多个n个任意字符串 |
n? | 匹配包含零个或一个n个任意字符串 |
n{X} | 匹配包含的序列的字符串X n的 |
n{X,Y} | 匹配包含X与Y序列的字符串n的 |
n{X,} | 匹配包含至少X的序列的字符串n的 |
n$ | 匹配有n任何字符串在它的结束 |
^n | 匹配有n任何字符串在它的开始 |
?=n | 匹配后跟指定字符串n任何字符串 |
?!n | 匹配后面没有一个特定的字符串n任何字符串 |
RegExp对象属性
属性 | 描述 |
---|---|
constructor | 返回创建RegExp对象的原型功能 |
global | 检查是否"g"修改设置 |
ignoreCase | 检查是否"i"修改设置 |
lastIndex | 指定索引处开始进行下一场比赛 |
multiline | 检查是否"m"修改设置 |
source | 返回正则表达式模式的文本 |
RegExp对象的方法
方法 | 描述 |
---|---|
compile() | 弃用1.5版本。 编译正则表达式 |
exec() | 试验在一个字符串匹配。 返回的第一场比赛 |
test() | 试验在一个字符串匹配。 返回true或false |
toString() | 返回正则表达式的字符串值 |