JavaScript RegExp - 快速指南
JavaScript RegExp - 概述
正则表达式是描述字符模式的对象。
JavaScript RegExp 类表示正则表达式,String 和 RegExp 都定义了使用正则表达式对文本执行强大的模式匹配和搜索替换功能的方法。
语法
可以使用 RegExp () 构造函数定义正则表达式,如下所示 −
var pattern = new RegExp(pattern, attributed); 或者简单地 var pattern = /pattern/attributes;
以下是参数的描述 −
pattern −指定正则表达式或其他正则表达式的模式的字符串。
attributed − 可选字符串,包含"g"、"i"和"m"属性中的任意一个,分别指定全局、不区分大小写和多行匹配。
示例
以下示例显示如何使用 RegExp 检查给定文本中是否存在字符串。
<html>
<head>
<title>JavaScript RegExp</title>
</head>
<body>
<script type = "text/javascript">
var str = "Javascript is an interesting scripting language";
var re = new RegExp( "script", "g" );
var result = re.test(str);
document.write("测试 1 - 返回值: " + result);
re = new RegExp( "pushing", "g" );
var result = re.test(str);
document.write("<br />测试 2 - 返回值: " + result);
</script>
</body>
</html>
输出
测试 1 - 返回值: true 测试 2 - 返回值: false
JavaScript RegExp - [...]
Description
[...] checks if any one character between the brackets is present in the searched string.
Example
Following example shows usage of RegExp expression.
<html>
<head>
<title>JavaScript RegExp</title>
</head>
<body>
<script type = "text/javascript">
var str = "first";
var pattern = /[abcde]/g;
var result = str.match(pattern);
document.write("测试 1 - 返回值: " + result);
str = "second";
result = str.match(pattern);
document.write("<br/>测试 2 - 返回值: " + result);
</script>
</body>
</html>
输出
测试 1 - 返回值: null 测试 2 - 返回值: e,c,d
JavaScript RegExp - [^...]
Description
[^...] checks if any one character between the brackets is not present in the searched string.
Example
Following example shows usage of RegExp expression.
<html>
<head>
<title>JavaScript RegExp</title>
</head>
<body>
<script type = "text/javascript">
var str = "first";
var pattern = /[^abcde]/g;
var result = str.match(pattern);
document.write("测试 1 - 返回值: " + result);
str = "second";
result = str.match(pattern);
document.write("<br/>测试 2 - 返回值: " + result);
</script>
</body>
</html>
输出
测试 1 - 返回值: f,i,r,s,t 测试 2 - 返回值: s,o,n
JavaScript RegExp - [0-9]
描述
[0-9] 匹配从 0 到 9 的任何十进制数字。
示例
以下示例显示了 RegExp 表达式的用法。
<html>
<head>
<title>JavaScript RegExp</title>
</head>
<body>
<script type = "text/javascript">
var str = "first";
var pattern = /[0-9]/g;
var result = str.match(pattern);
document.write("测试 1 - 返回值: " + result);
str = "2nd";
result = str.match(pattern);
document.write("<br/>测试 2 - 返回值: " + result);
</script>
</body>
</html>
输出
测试 1 - 返回值: null 测试 2 - 返回值: 2
JavaScript RegExp - [a-z]
描述
[a-z] 匹配从小写 a 到小写 z 的任何字符。
示例
以下示例显示了 RegExp 表达式的用法。
<html>
<head>
<title>JavaScript RegExp</title>
</head>
<body>
<script type = "text/javascript">
var str = "first";
var pattern = /[a-z]/g;
var result = str.match(pattern);
document.write("测试 1 - 返回值: " + result);
str = "Second";
result = str.match(pattern);
document.write("<br/>测试 2 - 返回值: " + result);
</script>
</body>
</html>
输出
测试 1 - 返回值: f,i,r,s,t 测试 2 - 返回值: e,c,o,n,d
JavaScript RegExp - [A-Z]
描述
[A-Z] 匹配从大写字母 A 到大写字母 Z 的任何字符。
示例
以下示例显示了 RegExp 表达式的用法。
<html>
<head>
<title>JavaScript RegExp</title>
</head>
<body>
<script type = "text/javascript">
var str = "first";
var pattern = /[A-Z]/g;
var result = str.match(pattern);
document.write("测试 1 - 返回值: " + result);
str = "Second";
result = str.match(pattern);
document.write("<br/>测试 2 - 返回值: " + result);
</script>
</body>
</html>
输出
测试 1 - 返回值: null 测试 2 - 返回值: S
JavaScript RegExp - [a-zA-Z]
描述
[a-zA-Z] 匹配从小写字母 a 到大写字母 Z 的任何字符。
示例
以下示例显示了 RegExp 表达式的用法。
<html>
<head>
<title>JavaScript RegExp</title>
</head>
<body>
<script type = "text/javascript">
var str = "first1";
var pattern = /[a-zA-Z]/g;
var result = str.match(pattern);
document.write("测试 1 - 返回值: " + result);
str = "Second2";
result = str.match(pattern);
document.write("<br/>测试 2 - 返回值: " + result);
</script>
</body>
</html>
输出
测试 1 - 返回值: f,i,r,s,t 测试 2 - 返回值: S,e,c,o,n,d
JavaScript RegExp - p+
描述
p+ 匹配任何包含一个或多个 p 的字符串。
示例
以下示例显示了 RegExp 表达式的用法。
<html>
<head>
<title>JavaScript RegExp</title>
</head>
<body>
<script type = "text/javascript">
var str = "abcpp";
var pattern = /p+/g;
var result = str.match(pattern);
document.write("测试 1 - 返回值: " + result);
str = "abc";
result = str.match(pattern);
document.write("<br/>测试 2 - 返回值: " + result);
</script>
</body>
</html>
输出
测试 1 - 返回值: pp 测试 2 - 返回值: null
JavaScript RegExp - p*
描述
p* 匹配任何包含零个或多个 p 的字符串。
示例
以下示例显示了 RegExp 表达式的用法。
<html>
<head>
<title>JavaScript RegExp</title>
</head>
<body>
<script type = "text/javascript">
var str = "abcpp";
var pattern = /p*/g;
var result = str.match(pattern);
document.write("测试 1 - 返回值: " + result);
str = "abc";
result = str.match(pattern);
document.write("<br/>测试 2 - 返回值: " + result);
</script>
</body>
</html>
输出
测试 1 - 返回值: ,,,pp, 测试 2 - 返回值: ,,,
JavaScript RegExp - p?
描述
p? 匹配任何包含零个或多个 p 的字符串。
示例
以下示例显示了 RegExp 表达式的用法。
<html>
<head>
<title>JavaScript RegExp</title>
</head>
<body>
<script type = "text/javascript">
var str = "abcpp";
var pattern = /p?/g;
var result = str.match(pattern);
document.write("测试 1 - 返回值: " + result);
str = "abc";
result = str.match(pattern);
document.write("<br/>测试 2 - 返回值: " + result);
</script>
</body>
</html>
输出
测试 1 - 返回值: ,,,p,p, 测试 2 - 返回值: ,,,
JavaScript RegExp - p{N}
描述
p{N} 匹配任何包含 N 个 p 序列的字符串。
示例
以下示例显示了 RegExp 表达式的用法。
<html>
<head>
<title>JavaScript RegExp</title>
</head>
<body>
<script type = "text/javascript">
var str = "abcpp";
var pattern = /p{2}/g;
var result = str.match(pattern);
document.write("测试 1 - 返回值: " + result);
str = "abcp";
result = str.match(pattern);
document.write("<br/>测试 2 - 返回值: " + result);
</script>
</body>
</html>
输出
测试 1 - 返回值: pp 测试 2 - 返回值: null
JavaScript RegExp - p{N1, N2}
描述
p{N1, N2} 匹配任何包含 N1 或 N2 p 序列的字符串。
示例
以下示例显示了 RegExp 表达式的用法。
<html>
<head>
<title>JavaScript RegExp</title>
</head>
<body>
<script type = "text/javascript">
var str = "abcpp";
var pattern = /p{2,3}/g;
var result = str.match(pattern);
document.write("测试 1 - 返回值: " + result);
str = "abcp";
result = str.match(pattern);
document.write("<br/>测试 2 - 返回值: " + result);
</script>
</body>
</html>
输出
测试 1 - 返回值: pp 测试 2 - 返回值: null
JavaScript RegExp - p{N,}
描述
p{N,} 匹配任何包含至少 N 个 p 序列的字符串。
示例
以下示例显示了 RegExp 表达式的用法。
<html>
<head>
<title>JavaScript RegExp</title>
</head>
<body>
<script type = "text/javascript">
var str = "abcpp";
var pattern = /p{2,}/g;
var result = str.match(pattern);
document.write("测试 1 - 返回值: " + result);
str = "abcp";
result = str.match(pattern);
document.write("<br/>测试 2 - 返回值: " + result);
</script>
</body>
</html>
输出
测试 1 - 返回值: pp 测试 2 - 返回值: null
JavaScript RegExp - p$
描述
p$ 匹配任何以 p 结尾的字符串。
示例
以下示例显示了 RegExp 表达式的用法。
<html>
<head>
<title>JavaScript RegExp</title>
</head>
<body>
<script type = "text/javascript">
var str = "abcpp";
var pattern = /p$/g;
var result = str.match(pattern);
document.write("测试 1 - 返回值: " + result);
str = "abc";
result = str.match(pattern);
document.write("<br/>测试 2 - 返回值: " + result);
</script>
</body>
</html>
输出
测试 1 - 返回值: p 测试 2 - 返回值: null
JavaScript RegExp - ^p
描述
^p 匹配任何以 p 开头的字符串。
示例
以下示例显示了 RegExp 表达式的用法。
<html>
<head>
<title>JavaScript RegExp</title>
</head>
<body>
<script type = "text/javascript">
var str = "pabc";
var pattern = /^p/g;
var result = str.match(pattern);
document.write("测试 1 - 返回值: " + result);
str = "abc";
result = str.match(pattern);
document.write("<br/>测试 2 - 返回值: " + result);
</script>
</body>
</html>
输出
测试 1 - 返回值: p 测试 2 - 返回值: null
JavaScript RegExp - [^a-zA-Z]
描述
[^a-zA-Z] 匹配任何不包含 a 到 z 和 A 到 Z 范围内任何字符的字符串。
示例
以下示例显示了 RegExp 表达式的用法。
<html>
<head>
<title>JavaScript RegExp</title>
</head>
<body>
<script type = "text/javascript">
var str = "1323pabc";
var pattern = /[^a-zA-Z]/g;
var result = str.match(pattern);
document.write("测试 1 - 返回值: " + result);
str = "abc";
result = str.match(pattern);
document.write("<br/>测试 2 - 返回值: " + result);
</script>
</body>
</html>
输出
测试 1 - 返回值: 1,3,2,3 测试 2 - 返回值: null
JavaScript RegExp - p.p
描述
p.p 匹配任何包含 p 的字符串,后跟任意字符,再后跟另一个 p。
示例
以下示例显示了 RegExp 表达式的用法。
<html>
<head>
<title>JavaScript RegExp</title>
</head>
<body>
<script type = "text/javascript">
var str = "pap";
var pattern = /p.p/g;
var result = str.match(pattern);
document.write("测试 1 - 返回值: " + result);
str = "pp";
result = str.match(pattern);
document.write("<br/>测试 2 - 返回值: " + result);
</script>
</body>
</html>
输出
测试 1 - 返回值: pap 测试 2 - 返回值: null
JavaScript RegExp - ^.{2}$
描述
^.{2}$ 匹配任何包含两个字符的字符串。
示例
以下示例显示了 RegExp 表达式的用法。
<html>
<head>
<title>JavaScript RegExp</title>
</head>
<body>
<script type = "text/javascript">
var str = "pa";
var pattern = /^.{2}$/g;
var result = str.match(pattern);
document.write("测试 1 - 返回值: " + result);
str = "pap";
result = str.match(pattern);
document.write("<br/>测试 2 - 返回值: " + result);
</script>
</body>
</html>
输出
测试 1 - 返回值: pa 测试 2 - 返回值: null
JavaScript RegExp - <b>(.*)<\/b>
描述
<b>(.*)<\/b> 匹配任何包含在 <b> 和 </b> 内的字符串。
示例
以下示例显示了 RegExp 表达式的用法。
<html>
<head>
<title>JavaScript RegExp</title>
</head>
<body>
<script type = "text/javascript">
var str = "<b>ab</b>";
var pattern = /<b>(.*)<\/b>/g;
var result = str.match(pattern);
document.write("测试 1 - 返回值: " + result);
str = "pap";
result = str.match(pattern);
document.write("<br/>测试 2 - 返回值: " + result);
</script>
</body>
</html>
输出
测试 1 - 返回值: ab 测试 2 - 返回值: null
JavaScript RegExp - p(hp)*
描述
p(hp)* 匹配任何包含 p 且后跟零个或多个序列 hp 实例的字符串。
示例
以下示例显示了 RegExp 表达式的用法。
<html>
<head>
<title>JavaScript RegExp</title>
</head>
<body>
<script type = "text/javascript">
var str = "phphp";
var pattern = /p(hp)*/g;
var result = str.match(pattern);
document.write("测试 1 - 返回值: " + result);
str = "pap";
result = str.match(pattern);
document.write("<br/>测试 2 - 返回值: " + result);
</script>
</body>
</html>
输出
测试 1 - 返回值: phphp 测试 2 - 返回值: p,p
JavaScript RegExp - Alphanumeric
描述
字母数字匹配自身。
示例
以下示例显示了 RegExp 表达式的用法。
<html>
<head>
<title>JavaScript RegExp</title>
</head>
<body>
<script type = "text/javascript">
var str = "ab1";
var pattern = /abc/g;
var result = str.match(pattern);
document.write("测试 1 - 返回值: " + result);
str = "abc";
result = str.match(pattern);
document.write("<br/>测试 2 - 返回值: " + result);
</script>
</body>
</html>
输出
测试 1 - 返回值: null 测试 2 - 返回值: abc
JavaScript RegExp - \0
描述
\0 匹配 NUL 字符 (\u0000)。
示例
以下示例显示了 RegExp 表达式的用法。
<html>
<head>
<title>JavaScript RegExp</title>
</head>
<body>
<script type = "text/javascript">
var str = "ab\0c";
var pattern = /\0/g;
var index = str.search(pattern);
document.write("测试 1 - 返回值: " + index);
str = "abc";
index = str.search(pattern);
document.write("<br/>测试 2 - 返回值: " + index);
</script>
</body>
</html>
输出
测试 1 - 返回值: 2 测试 2 - 返回值: -1
JavaScript RegExp -
描述
匹配 Tab 字符 (\u0009)。
示例
以下示例显示了 RegExp 表达式的用法。
<html>
<head>
<title>JavaScript RegExp</title>
</head>
<body>
<script type = "text/javascript">
var str = "ab c";
var pattern = / /g;
var index = str.search(pattern);
document.write("测试 1 - 返回值: " + index);
str = "abc";
index = str.search(pattern);
document.write("<br/>测试 2 - 返回值: " + index);
</script>
</body>
</html>
输出
测试 1 - 返回值: 2 测试 2 - 返回值: -1
JavaScript RegExp -
描述
匹配换行符 (\u00A)。
示例
以下示例显示了 RegExp 表达式的用法。
<html>
<head>
<title>JavaScript RegExp</title>
</head>
<body>
<script type = "text/javascript">
var str = "ab
c";
var pattern = /
/g;
var index = str.search(pattern);
document.write("测试 1 - 返回值: " + index);
str = "abc";
index = str.search(pattern);
document.write("<br/>测试 2 - 返回值: " + index);
</script>
</body>
</html>
输出
测试 1 - 返回值: 2 测试 2 - 返回值: -1
JavaScript RegExp - \v
描述
\v 匹配垂直制表符 (\u00B)。
示例
以下示例显示了 RegExp 表达式的用法。
<html>
<head>
<title>JavaScript RegExp</title>
</head>
<body>
<script type = "text/javascript">
var str = "ab\vc";
var pattern = /\v/g;
var index = str.search(pattern);
document.write("测试 1 - 返回值: " + index);
str = "abc";
index = str.search(pattern);
document.write("<br/>测试 2 - 返回值: " + index);
</script>
</body>
</html>
输出
测试 1 - 返回值: 2 测试 2 - 返回值: -1
JavaScript RegExp - \f
描述
\f 匹配换页符 (\u00C)。
示例
以下示例显示了 RegExp 表达式的用法。
<html>
<head>
<title>JavaScript RegExp</title>
</head>
<body>
<script type = "text/javascript">
var str = "ab\fc";
var pattern = /\f/g;
var index = str.search(pattern);
document.write("测试 1 - 返回值: " + index);
str = "abc";
index = str.search(pattern);
document.write("<br/>测试 2 - 返回值: " + index);
</script>
</body>
</html>
输出
测试 1 - 返回值: 2 测试 2 - 返回值: -1
JavaScript RegExp -
描述
匹配回车符 (\u00D)。
示例
以下示例显示了 RegExp 表达式的用法。
<html>
<head>
<title>JavaScript RegExp</title>
</head>
<body>
<script type = "text/javascript">
var str = "ab
c";
var pattern = /
/g;
var index = str.search(pattern);
document.write("测试 1 - 返回值: " + index);
str = "abc";
index = str.search(pattern);
document.write("<br/>测试 2 - 返回值: " + index);
</script>
</body>
</html>
输出
测试 1 - 返回值: 2 测试 2 - 返回值: -1
JavaScript RegExp - \xnn
描述
\xnn 匹配十六进制数 nn 指定的拉丁字符;例如,\x0A 与 相同。
示例
以下示例显示了 RegExp 表达式的用法。
<html>
<head>
<title>JavaScript RegExp</title>
</head>
<body>
<script type = "text/javascript">
var str = "ab\x0Ac";
var pattern = /\x0A/g;
var index = str.search(pattern);
document.write("测试 1 - 返回值: " + index);
str = "abc";
index = str.search(pattern);
document.write("<br/>测试 2 - 返回值: " + index);
</script>
</body>
</html>
输出
测试 1 - 返回值: 2 测试 2 - 返回值: -1
JavaScript RegExp - \uxxxx
描述
\uxxxx 匹配十六进制数 xxxx 指定的 Unicode 字符;例如,\u0009 与 相同。
示例
以下示例显示了 RegExp 表达式的用法。
<html>
<head>
<title>JavaScript RegExp</title>
</head>
<body>
<script type = "text/javascript">
var str = "ab\u0009c";
var pattern = /\u0009/g;
var index = str.search(pattern);
document.write("测试 1 - 返回值: " + index);
str = "abc";
index = str.search(pattern);
document.write("<br/>测试 2 - 返回值: " + index);
</script>
</body>
</html>
输出
测试 1 - 返回值: 2 测试 2 - 返回值: -1
JavaScript RegExp - .
描述
. 匹配单个字符。
示例
以下示例显示了 RegExp 表达式的用法。
<html>
<head>
<title>JavaScript RegExp</title>
</head>
<body>
<script type = "text/javascript">
var str = "abc";
var pattern = /./g;
var result = str.match(pattern);
document.write("测试 1 - 返回值: " + result);
str = "";
result = str.match(pattern);
document.write("<br/>测试 2 - 返回值: " + result);
</script>
</body>
</html>
输出
测试 1 - 返回值: a,b,c 测试 2 - 返回值: null
JavaScript RegExp - \s
描述
\s 匹配空白字符(空格、制表符、换行符)。
示例
以下示例显示了 RegExp 表达式的用法。
<html>
<head>
<title>JavaScript RegExp</title>
</head>
<body>
<script type = "text/javascript">
var str = "ab c";
var pattern = /\s/g;
var result = str.match(pattern);
document.write("测试 1 - 返回值: " + result);
str = "abc";
result = str.match(pattern);
document.write("<br/>测试 2 - 返回值: " + result);
</script>
</body>
</html>
输出
测试 1 - 返回值: 测试 2 - 返回值: null
JavaScript RegExp - \S
描述
\S 匹配非空白字符。
示例
以下示例显示了 RegExp 表达式的用法。
<html>
<head>
<title>JavaScript RegExp</title>
</head>
<body>
<script type = "text/javascript">
var str = "ab c";
var pattern = /\S/g;
var result = str.match(pattern);
document.write("测试 1 - 返回值: " + result);
str = "";
result = str.match(pattern);
document.write("<br/>测试 2 - 返回值: " + result);
</script>
</body>
</html>
输出
测试 1 - 返回值: a,b,c 测试 2 - 返回值: null
JavaScript RegExp - \d
描述
\d 匹配数字 (0-9)。
示例
以下示例显示了 RegExp 表达式的用法。
<html>
<head>
<title>JavaScript RegExp</title>
</head>
<body>
<script type = "text/javascript">
var str = "ab123c";
var pattern = /\d/g;
var result = str.match(pattern);
document.write("测试 1 - 返回值: " + result);
str = "abc";
result = str.match(pattern);
document.write("<br/>测试 2 - 返回值: " + result);
</script>
</body>
</html>
输出
测试 1 - 返回值: 1,2,3 测试 2 - 返回值: null
JavaScript RegExp - \D
描述
\D 匹配非数字。
示例
以下示例显示了 RegExp 表达式的用法。
<html>
<head>
<title>JavaScript RegExp</title>
</head>
<body>
<script type = "text/javascript">
var str = "ab123c";
var pattern = /\D/g;
var result = str.match(pattern);
document.write("测试 1 - 返回值: " + result);
str = "abc";
result = str.match(pattern);
document.write("<br/>测试 2 - 返回值: " + result);
</script>
</body>
</html>
输出
测试 1 - 返回值: a,b,c 测试 2 - 返回值: a,b,c
JavaScript RegExp - \w
描述
\w 匹配一个单词字符 (a-z、A-Z、0-9、_)。
示例
以下示例显示了 RegExp 表达式的用法。
<html>
<head>
<title>JavaScript RegExp</title>
</head>
<body>
<script type = "text/javascript">
var str = "ab123c_#@";
var pattern = /\w/g;
var result = str.match(pattern);
document.write("测试 1 - 返回值: " + result);
str = "abc bcd";
result = str.match(pattern);
document.write("<br/>测试 2 - 返回值: " + result);
</script>
</body>
</html>
输出
测试 1 - 返回值: a,b,1,2,3,c,_ 测试 2 - 返回值: a,b,c,b,c,d
JavaScript RegExp - \W
描述
\w 匹配非单词字符。
示例
以下示例显示了 RegExp 表达式的用法。
<html>
<head>
<title>JavaScript RegExp</title>
</head>
<body>
<script type = "text/javascript">
var str = "ab123c_#@";
var pattern = /\W/g;
var result = str.match(pattern);
document.write("测试 1 - 返回值: " + result);
str = "abc bcd";
result = str.match(pattern);
document.write("<br/>测试 2 - 返回值: " + result);
</script>
</body>
</html>
输出
测试 1 - 返回值: #,@ 测试 2 - 返回值:
JavaScript RegExp - [aeiou]
描述
[aeiou] 匹配给定集合中的单个字符。
示例
以下示例显示了 RegExp 表达式的用法。
<html>
<head>
<title>JavaScript RegExp</title>
</head>
<body>
<script type = "text/javascript">
var str = "first alphabet";
var pattern = /[abcde]/g;
var result = str.match(pattern);
document.write("测试 1 - 返回值: " + result);
str = "second";
result = str.match(pattern);
document.write("<br/>测试 2 - 返回值: " + result);
</script>
</body>
</html>
输出
测试 1 - 返回值: a,a,b,e 测试 2 - 返回值: e,c,d
JavaScript RegExp - [^aeiou]
描述
[^aeiou] 匹配给定集合之外的单个字符。
示例
以下示例显示了 RegExp 表达式的用法。
<html>
<head>
<title>JavaScript RegExp</title>
</head>
<body>
<script type = "text/javascript">
var str = "first alphabet";
var pattern = /[^abcde]/g;
var result = str.match(pattern);
document.write("测试 1 - 返回值: " + result);
str = "second";
result = str.match(pattern);
document.write("<br/>测试 2 - 返回值: " + result);
</script>
</body>
</html>
输出
测试 1 - 返回值: f,i,r,s,t, ,l,p,h,t 测试 2 - 返回值: s,o,n
JavaScript RegExp - (foo|bar|baz)
描述
(foo|bar|baz) 匹配任何指定的替代方案。
示例
以下示例显示了 RegExp 表达式的用法。
<html>
<head>
<title>JavaScript RegExp</title>
</head>
<body>
<script type = "text/javascript">
var str = "foo abc";
var pattern = /(foo|bar|baz)/g;
var result = str.match(pattern);
document.write("测试 1 - 返回值: " + result);
str = "bar baz";
result = str.match(pattern);
document.write("<br/>测试 2 - 返回值: " + result);
</script>
</body>
</html>
输出
测试 1 - 返回值: foo 测试 2 - 返回值: bar,baz
JavaScript RegExp - i
描述
i 执行不区分大小写的匹配。
示例
以下示例显示了 RegExp 表达式的用法。
<html>
<head>
<title>JavaScript RegExp</title>
</head>
<body>
<script type = "text/javascript">
var str = "abcABC";
var pattern = /[aeiou]/ig;
var result = str.match(pattern);
document.write("测试 1 - 返回值: " + result);
pattern = /[aeiou]/g;
result = str.match(pattern);
document.write("<br/>测试 2 - 返回值: " + result);
</script>
</body>
</html>
输出
测试 1 - 返回值: a,A 测试 2 - 返回值: a
JavaScript RegExp - g
描述
g 执行全局匹配,即查找所有匹配项,而不是在第一个匹配项后停止。
示例
以下示例显示了 RegExp 表达式的用法。
<html>
<head>
<title>JavaScript RegExp</title>
</head>
<body>
<script type = "text/javascript">
var str = "abcabcabc";
var pattern = /abc/g;
var result = str.match(pattern);
document.write("测试 1 - 返回值: " + result);
pattern = /abc/;
result = str.match(pattern);
document.write("<br/>测试 2 - 返回值: " + result);
</script>
</body>
</html>
输出
测试 1 - 返回值: abc,abc,abc 测试 2 - 返回值: abc
JavaScript RegExp - constructor
描述
它返回对创建实例原型的数组函数的引用。
语法
其语法如下 −
RegExp.constructor
返回值
返回创建此对象实例的函数。
示例
以下示例显示了 RegExp 表达式的用法。
<html>
<head>
<title>JavaScript RegExp constructor Property</title>
</head>
<body>
<script type = "text/javascript">
var re = new RegExp( "string" );
document.write("re.constructor is:" + re.constructor);
</script>
</body>
</html>
输出
re.constructor is: function RegExp() { [native code] }
JavaScript RegExp - global
描述
global 是 RegExp 对象的只读布尔属性。它指定特定正则表达式是否执行全局匹配,即它是否使用"g"属性创建。
语法
其语法如下 −
RegExpObject.global
返回值
如果设置了"g"修饰符,则返回"TRUE",否则返回"FALSE"。
示例
<html>
<head>
<title>JavaScript RegExp global Property</title>
</head>
<body>
<script type = "text/javascript">
var re = new RegExp( "string" );
if ( re.global ) {
document.write("Test1 - Global property is set");
} else {
document.write("Test1 - Global property is not set");
}
re = new RegExp( "string", "g" );
if ( re.global ) {
document.write("<br />Test2 - Global property is set");
} else {
document.write("<br />Test2 - Global property is not set");
}
</script>
</body>
</html>
输出
Test1 - Global property is not set Test2 - Global property is set
JavaScript RegExp - ignoreCase
描述
ignoreCase 是 RegExp 对象的只读布尔属性。它指定特定正则表达式是否执行不区分大小写的匹配,即它是否使用"i"属性创建。
语法
其语法如下 −
RegExpObject.ignoreCase
返回值
如果设置了"i"修饰符,则返回"TRUE",否则返回"FALSE"。
示例
<html>
<head>
<title>JavaScript RegExp ignoreCase Property</title>
</head>
<body>
<script type = "text/javascript">
var re = new RegExp( "string" );
if ( re.ignoreCase ) {
document.write("Test1-ignoreCase property is set");
} else {
document.write("Test1-ignoreCase property is not set");
}
re = new RegExp( "string", "i" );
if ( re.ignoreCase ) {
document.write("<br/>Test2-ignoreCase property is set");
} else {
document.write("<br/>Test2-ignoreCase property is not set");
}
</script>
</body>
</html>
输出
Test1 - ignoreCase property is not set Test2 - ignoreCase property is set
JavaScript RegExp - lastIndex
描述
lastIndex RegExp 对象的读/写属性。对于设置了"g"属性的正则表达式,它包含一个整数,该整数指定紧接在 RegExp.exec() 和 RegExp.test() 方法找到的最后一个匹配项之后的字符位置。这些方法使用此属性作为它们进行的下一次搜索的起点。
此属性允许您重复调用这些方法,以循环遍历字符串中的所有匹配项,并且仅在设置了"g"修饰符时才有效。
此属性是读/写的,因此您可以随时设置它以指定下一个搜索应在目标字符串中的何处开始。 exec() 和 test() 在无法找到匹配项(或另一个匹配项)时会自动将 lastIndex 重置为 0。
语法
其语法如下 −
RegExpObject.lastIndex
返回值
返回一个整数,指定紧接在最后一个匹配项之后的字符位置。
示例
<html>
<head>
<title>JavaScript RegExp lastIndex Property</title>
</head>
<body>
<script type = "text/javascript">
var str = "Javascript is an interesting scripting language";
var re = new RegExp( "script", "g" );
re.test(str);
document.write("Test 1 - Current Index: " + re.lastIndex);
re.test(str);
document.write("<br />Test 2 - Current Index: " + re.lastIndex);
</script>
</body>
</html>
输出
Test 1 - Current Index: 10 Test 2 - Current Index: 35
JavaScript RegExp - multiline
描述
multiline 是 RegExp 对象的只读布尔属性。它指定特定正则表达式是否执行多行匹配,即它是否使用"m"属性创建。
语法
其语法如下 −
RegExpObject.multiline
返回值
如果设置了"m"修饰符,则返回"TRUE",否则返回"FALSE"。
示例
<html>
<head>
<title>JavaScript RegExp multiline Property</title>
</head>
<body>
<script type = "text/javascript">
var re = new RegExp( "string" );
if ( re.multiline ) {
document.write("Test1-multiline property is set");
} else {
document.write("Test1-multiline property is not set");
}
re = new RegExp( "string", "m" );
if ( re.multiline ) {
document.write("<br/>Test2-multiline property is set");
} else {
document.write("<br/>Test2-multiline property is not set");
}
</script>
</body>
</html>
输出
Test1 - multiline property is not set Test2 - multiline property is set
JavaScript RegExp - source
描述
source 是 RegExp 对象的只读字符串属性。它包含 RegExp 模式的文本。此文本不包括正则表达式文字中使用的分隔斜杠,也不包括"g"、"i"和"m"属性。
语法
其语法如下 −
RegExpObject.source
返回值
返回用于模式匹配的文本。
示例
<html>
<head>
<title>JavaScript RegExp source Property</title>
</head>
<body>
<script type = "text/javascript">
var str = "Javascript is an interesting scripting language";
var re = new RegExp( "script", "g" );
re.test(str);
document.write("The regular expression is : " + re.source);
</script>
</body>
</html>
输出
The regular expression is : script
JavaScript RegExp - exec
描述
exec 方法在字符串中搜索与正则表达式匹配的文本。如果找到匹配项,则返回结果数组;否则,返回 null。
语法
其语法如下 −
RegExpObject.exec( string );
参数详细信息
string − 要搜索的字符串
返回值
如果找到匹配项,则返回匹配的文本,否则返回 null。
示例
<html>
<head>
<title>JavaScript RegExp exec Method</title>
</head>
<body>
<script type = "text/javascript">
var str = "Javascript is an interesting scripting language";
var re = new RegExp( "script", "g" );
var result = re.exec(str);
document.write("测试 1 - 返回值: " + result);
re = new RegExp( "pushing", "g" );
var result = re.exec(str);
document.write("<br />测试 2 - 返回值: " + result);
</script>
</body>
</html>
输出
测试 1 - 返回值: script 测试 2 - 返回值: null
JavaScript RegExp - test
描述
test 方法在字符串中搜索与正则表达式匹配的文本。如果找到匹配项,则返回 true;否则,返回 false。
语法
其语法如下 −
RegExpObject.test( string );
参数详细信息
string − 要搜索的字符串
返回值
如果找到匹配项,则返回匹配的文本,否则返回 null。
示例
<html>
<head>
<title>JavaScript RegExp test Method</title>
</head>
<body>
<script type = "text/javascript">
var str = "Javascript is an interesting scripting language";
var re = new RegExp( "script", "g" );
var result = re.test(str);
document.write("测试 1 - 返回值: " + result);
re = new RegExp( "pushing", "g" );
var result = re.test(str);
document.write("<br />测试 2 - 返回值: " + result);
</script>
</body>
</html>
输出
测试 1 - 返回值: true 测试 2 - 返回值: false
JavaScript RegExp - toSource
描述
toSource方法字符串表示对象的源代码。此方法不适用于所有浏览器。
此方法不适用于所有浏览器。
语法
其语法如下 −
RegExpObject.toSource();
返回值
返回表示对象源代码的字符串。
示例
尝试以下示例程序。
<html>
<head>
<title>JavaScript RegExp toSource Method</title>
</head>
<body>
<script type = "text/javascript">
var str = "Javascript is an interesting scripting language";
var re = new RegExp( "script", "g" );
var result = re.toSource(str);
document.write("测试 1 - 返回值: " + result);
re = new RegExp( "/", "g" );
var result = re.toSource(str);
document.write("<br />测试 2 - 返回值: " + result);
</script>
</body>
</html>
输出
测试 1 - 返回值: /script/g 测试 2 - 返回值: /\//g
JavaScript RegExp - toString
描述
toString 方法以正则表达式文字的形式返回正则表达式的字符串表示形式。
语法
其语法如下 −
RegExpObject.toString();
返回值
返回正则表达式的字符串表示形式。
示例
<html>
<head>
<title>JavaScript RegExp toString Method</title>
</head>
<body>
<script type = "text/javascript">
var str = "Javascript is an interesting scripting language";
var re = new RegExp( "script", "g" );
var result = re.toString(str);
document.write("测试 1 - 返回值: " + result);
re = new RegExp( "/", "g" );
var result = re.toString(str);
document.write("<br />测试 2 - 返回值: " + result);
</script>
</body>
</html>
输出
测试 1 - 返回值: /script/g 测试 2 - 返回值: /\//g

