开发手册HTMLCSSJavaScript
HTML手册CSS手册JavaScript手册JavaScriptJS 教程JS 简介JS 实现JS 输出JS 语句JS 注释JS 变量JS 数据类型JS 对象JS 函数JS 运算符JS 比较JS If...ElseJS SwitchJS ForJS WhileJS BreakJS 错误JS 验证DOM 简介DOM HTMLDOM CSSDOM 事件DOM 节点JS 对象JS 数字JS 字符串JS 日期JS 数组JS 逻辑JS 算数JS 正则表达式JS WindowJS ScreenJS LocationJS HistoryJS NavigatorJS PopupAlertJS TimingJS CookiesJS 库JS jQueryJS PrototypeJS 实例JS 对象实例JS 总结JavaScript 对象HTML DOM 对象JS 高级教程HTML DOMjQueryJSONDHTMLJavaScript相关

JavaScript RegExp 对象

RegExp 对象用于规定在文本中检索的内容。

什么是 RegExp?

RegExp 是正则表达式的缩写。

当您检索某个文本时,可以使用一种模式来描述要检索的内容。RegExp 就是这种模式。

简单的模式可以是一个单独的字符。

更复杂的模式包括了更多的字符,并可用于解析、格式检查、替换等等。

您可以规定字符串中的检索位置,以及要检索的字符类型,等等。

定义 RegExp

RegExp 对象用于存储检索模式。

通过 new 关键词来定义 RegExp 对象。以下代码定义了名为 patt1 的 RegExp 对象,其模式是 "e":

var patt1=new RegExp("e");

当您使用该 RegExp 对象在一个字符串中检索时,将寻找的是字符 "e"。

RegExp 对象的方法

RegExp 对象有 3 个方法:test()、exec() 以及 compile()。

test()

test() 方法检索字符串中的指定值。返回值是 true 或 false。

例子:

var patt1=new RegExp("e");

document.write(patt1.test("The best things in life are free")); 

由于该字符串中存在字母 "e",以上代码的输出将是:

true

TIY

exec()

exec() 方法检索字符串中的指定值。返回值是被找到的值。如果没有发现匹配,则返回 null。

例子 1:

var patt1=new RegExp("e");

document.write(patt1.exec("The best things in life are free")); 

由于该字符串中存在字母 "e",以上代码的输出将是:

e

TIY

例子 2:

您可以向 RegExp 对象添加第二个参数,以设定检索。例如,如果需要找到所有某个字符的所有存在,则可以使用 "g" 参数 ("global")。

如需关于如何修改搜索模式的完整信息,请访问我们的 RegExp 对象参考手册

在使用 "g" 参数时,exec() 的工作原理如下:

  • 找到第一个 "e",并存储其位置
  • 如果再次运行 exec(),则从存储的位置开始检索,并找到下一个 "e",并存储其位置
var patt1=new RegExp("e","g");
do
{
result=patt1.exec("The best things in life are free");
document.write(result);
}
while (result!=null) 

由于这个字符串中 6 个 "e" 字母,代码的输出将是:

eeeeeenull

TIY

compile()

compile() 方法用于改变 RegExp。

compile() 既可以改变检索模式,也可以添加或删除第二个参数。

例子:

var patt1=new RegExp("e");

document.write(patt1.test("The best things in life are free"));

patt1.compile("d");

document.write(patt1.test("The best things in life are free"));

由于字符串中存在 "e",而没有 "d",以上代码的输出是:

truefalse

TIY

完整的 RegExp 对象参考手册

如需可与 RegExp 对象一同使用所有属性和方法的完整信息,请访问我们的 RegExp 对象参考手册

这个参考手册包含了对 RegExp 对象中每个属性和方法的详细描述,以及使用的例子。

关于千图| 赞助千图 |千图首页   Copyright2014千图网   沪ICP备10011451号-6   用时:0.0304秒

千图网提示