JavaScript RegExp 教程

JavaScript RegExp - 主页 JavaScript RegExp - 概述

括号

JavaScript RegExp - [...] JavaScript RegExp - [^...] JavaScript RegExp - [0-9] JavaScript RegExp - [a-z] JavaScript RegExp - [A-Z] JavaScript RegExp - [a-zA-Z]

量词

JavaScript RegExp - p+ JavaScript RegExp - p* JavaScript RegExp - p? JavaScript RegExp - p{N} JavaScript RegExp - p{N1,N2} JavaScript RegExp - p{N,} JavaScript RegExp - p$ JavaScript RegExp - ^p

匹配字符

JavaScript RegExp - [^a-zA-Z] JavaScript RegExp - p.p JavaScript RegExp - ^.{2}$ JavaScript RegExp - <b>(.*)</b> JavaScript RegExp - p(hp)*

文字字符

JavaScript RegExp - 字母数字 JavaScript RegExp - \0 JavaScript RegExp - \t JavaScript RegExp - \n JavaScript RegExp - \v JavaScript RegExp - \f JavaScript RegExp - r JavaScript RegExp - \xnn JavaScript RegExp - \uxxxx

元字符

JavaScript RegExp - . JavaScript RegExp - \s JavaScript RegExp - \S JavaScript RegExp - \d JavaScript RegExp - \D JavaScript RegExp - \w JavaScript RegExp - \W JavaScript RegExp - [aeiou] JavaScript RegExp - [^aeiou] JavaScript RegExp - (foo|bar|baz)

修饰符

JavaScript RegExp - i JavaScript RegExp - g

属性

JavaScript RegExp - constructor JavaScript RegExp - global JavaScript RegExp - ignoreCase JavaScript RegExp - lastIndex JavaScript RegExp - multiline JavaScript RegExp - source

方法

JavaScript RegExp - exec() JavaScript RegExp - test() JavaScript RegExp - toSource() JavaScript RegExp - toString()

有用资源

JavaScript RegExp - 快速指南 JavaScript RegExp - 有用资源 JavaScript RegExp - 讨论


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