`
cakin24
  • 浏览: 1368005 次
  • 性别: Icon_minigender_1
  • 来自: 西安
社区版块
存档分类
最新评论

创建RegExp对象

阅读更多

一 RegExp对象介绍

每一条正则表达式模式对应一个RegExp实例,有两种方式可以创建RegExp对象的实例。下面分别对这两种方式进行介绍。
1 使用RegExp的显式构造函数。
语法:
new RegExp("pattern"[,"flags"]) //即 new RegExp(" 模式 "[," 标记 "])
2 使用RegExp的隐式构造函数,采用纯文本格式。
语法:
/pattern/[flags]
 
pattern部分为要使用的正则表达式模式文本,是必须的。
在第一种方式中,pattern部分以JavaScript字符串的形式存在,需要使用双引号或单引号括起来;
在第二种方式中,pattern部分嵌套在两个“/”之间,不能使用引号。
flags部分设置正则表达式的标志信息,是可选项。
如果设置flags部分,在第一种方式中,以字符串的形式存在;在第二种方式中,以文本的形式紧接在最后一个“/”字符之后。
flags可以是以下标志字符的组合。
  • g是全局标志。
如果设置了这个标志,对某个文本执行搜索和替换操作时,将对文本中所有匹配的部分起作用。
如果不设置这个标志,则仅搜索和替换最早匹配的内容。
  • i是忽略大小写标志。
如果设置了这个标志,进行匹配比较时,将忽略大小写。
  • m是多行标志。
如果不设置这个标志,那么元字符“^”只与整个被搜索字符串的开始位置相匹配,而元字符“$”只与被搜索字符串的结束位置相匹配。
如果设置了这个标志,“^”还可以与被搜索字符串中的“\n”或“\r”之后的位置(即下一行的行首)相匹配,而“$”还可以与被搜索字符串中的“\n”或“\r”之后的位置(即下一行的行尾)相匹配。
注意:文本格式中的参数不要使用引号标记,而构造器函数的参数则要使用引号标记。所以下面的表达式建立同样的正则表达式:
/ab+c/i
new RegExp("ab+c","i")
当使用构造函数的时候,必须使用正常的字符串避开规则(在字符串中加入前导字符\)是必须的。例如,下面的两条语句是等价的:
re = new RegExp("\\w +")
re = /\w+/
 
二 代码
<html>
<head>
<title>创建正则表达式 </title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<script language = "JavaScript">
var myString="如何创建正则表达式";
var myregex = new RegExp("创建");  // 创建正则表达式
if (myregex.test(myString))
{
	document.write("已创建正则表达式,并找到了指定的模式!");
}
else
{
 	document.write("已创建正则表达式,但未找到匹配的模式。");
}
document.write("<BR>")
<script language="javascript">
 var re1 = new RegExp("\\d{2}");
 var re2 = /\d{2}/;
 alert("re1="+re1+"\nre2="+re2);
</script>
</script>
</head>
<body></body>
</html>
 
三 运行结果
已创建正则表达式,并找到了指定的模式!
re1=/\d{2}/ re2=/\d{2}/ 
 
四 运行说明
由于JavaScript字符串中的“\”是一个转义字符,因此,使用显式构造函数创建RegExp实例对象时,应将原始正则表达式中的“\”用“\\”替换。
由于正则表达式模式文本中的转义字符也是“\”,如果正则表达式中要匹配原义字符“\”,在正则表达式模式文本中要以“\\”来表示,当使用显式构造函数的方式创建RegExp实例对象的时候,就需要使用“\\\\”来表示原义字符“\”。例如:
var re = new RegExp("\\\\")
1
1
分享到:
评论

相关推荐

    [ASP]RegExp对象提供简单的正则表达式支持功能使用说明

    ' 创建RegExp对象,设置属性 Dim regEx, match Set regEx = New RegExp regEx.Pattern = pattern regEx.IgnoreCase = True regEx.Global = True ' 执行匹配 Dim matches Set matches = regEx.Execute...

    JavaScript RegExp 正则表达式对象详细说明

    直接量语法是创建RegExp对象的常见方式,如`/pattern/attributes`。例如,`/a/`定义了一个查找字符"a"的正则表达式。此外,也可以通过构造函数创建,如`new RegExp(pattern, attributes)`。这两个例子中,`pattern`...

    javascript RegExp对象(正则表达式)

    JavaScript支持两种方式来创建RegExp对象实例: 1. **使用显式构造函数**: - 语法:`new RegExp("pattern"[, "flags"])` - `pattern`是必需的,表示正则表达式模式文本。 - `flags`是可选的标志字符组合,用于...

    详解JavaScript正则表达式之RegExp对象

    创建RegExp对象有两种方式,一种是使用字面量创建,另一种是使用构造函数创建。 1. 使用字面量创建语法: ``` /pattern/attributes; ``` 这里的pattern是一个字符串,指定正则表达式的模式或其他正则表达式。...

    JS正则中的RegExp对象对象

    有两种方式可以创建RegExp对象的实例。 使用RegExp的显式构造函数,语法为:new RegExp(“pattern”[,”flags”])。 使用RegExp的隐式构造函数,采用纯文本格式:/pattern/[flags]。 pattern部分为要使用的正则...

    regexp-capture.rar_The Client

    - 使用`/pattern/`形式在字符串中直接定义正则表达式,或者使用`new RegExp('pattern')`创建RegExp对象。 2. **模式匹配**: - `match()`方法在字符串中查找匹配正则表达式的部分。 - `search()`方法查找首个...

    RegExp 随笔 JavaScript RegExp 对象

    在JavaScript中,有两种方法可以创建RegExp对象:一种是使用正则表达式字面量,另一种是使用RegExp构造函数。字面量方式使用斜杠(/)包围正则表达式,而构造函数方式则使用new RegExp("pattern", "flags")的形式。...

    每天一篇javascript学习小结(RegExp对象)

    在JavaScript代码中,可以使用正则表达式字面量来创建RegExp对象。字面量的格式是由斜杠(/)分隔的正则表达式模式,例如: ```javascript var pattern = /.at/; ``` 这里的`.at`是一个简单的正则表达式,它匹配...

    精彩编程与编程技巧-快速查找或替换文本中的字符...

    2. **创建 RegExp 对象**:通过 `Set MyReg = New RegExp` 创建了一个 `RegExp` 对象实例。 3. **设置属性**: - `MyReg.IgnoreCase = True` 表示忽略大小写进行匹配。 - `MyReg.Global = True` 表示执行全局匹配...

    深入浅析JavaScript中的RegExp对象

    创建RegExp对象有两种方式: 1. 字面量表示法:使用两个斜线`/`包裹模式,如`/xyz/`。 2. 构造函数:通过`new RegExp('xyz')`创建,其中第二个参数可以设置修饰符。 正则表达式的修饰符有: - `i`:忽略大小写。 - ...

    javascript RegExp 对象属性与方法和应用

    创建RegExp对象主要有两种方式: 1. 显式构造函数:`new RegExp("pattern"[,"flags"])`。在这里,`pattern`是一个字符串,包含你要匹配的正则表达式模式,`flags`是可选的标志字符,如`g`, `i`, 和 `m`。 2. 隐式...

    JavaScript学习小结(7)之JS RegExp

    在js中,正则表达式是由一个RegExp对象表示的,RegExp 是正则表达式的缩写。RegExp简单的模式可以是一个单独的字符。更复杂的模式包括了更多的...可以使用一个RegExp()构造函数来创建RegExp对象,也可以使用直接量语法

    javascript完全学习手册2 源码

    7.3.1 创建RegExp对象实例的两种方式 7.3.2 RegExp对象的属性 7.3.3 RegExp对象的方法 7.4 String对象中与正则表达式有关的方法 第8章 高级DoM技术 8.1 CSS样式 8.1.1 CSS语法 8.1.2 CSS属性 8.2 样式...

    正则表达式文档.docx

    可以使用一个RegExp()构造函数来创建RegExp对象,也可以用JavaScript正则表达式直接量也被定义为包含在一对斜杠 (/) 之间的字符。 正则表达式的模式规范是由一系列字符构成的。大多数字符(包括所有字母数字字符)...

    asp的RegExp对象正则表达式功能用法[比较全]

    - 创建RegExp对象的实例; - 设置Pattern属性,定义正则表达式的规则; - 根据需要设置Global和IgnoreCase属性; - 使用Execute方法或Replace方法对目标字符串进行操作。 例如,可以编写一个ASP函数来测试正则...

    javascript完全学习手册1 源码

    7.3.1 创建RegExp对象实例的 两种方式 168 7.3.2 RegExp对象的属性 170 7.3.3 RegExp对象的方法 173 7.4 String对象中与正则表达式 有关的方法 177 第8章 高级DOM技术 182 8.1 CSS样式 182 8.1.1 CSS语法 182 8.1.2 ...

    正则表达式匹配,替换,查找

    直接量语法/pattern/attributes创建RegExp对象的语法:newRegExp(pattern,attributes);参数参数patter… RegExp 对象 RegExp 对象表示正则表达式,它是对字符串执行模式匹配的强大工具。 直接量语法 /pattern/...

Global site tag (gtag.js) - Google Analytics