javascript正则表达式之二-RegExp对象
2014-05-12 09:16
399 查看
1.创建RegExp对象实例
创建方式
1)使用显式构造函数,语法为:new RegExp("pattern",[,"flags"])
2)使用隐式构造函数,采用纯粹的文本格式:/pattern/[flags]
flags标志字符:
-g用作全局标志
-i用作忽略大小写标志
-m用作多行标志
如果没有设置这个标志,那么元字符^只与整个被搜索字符串的开始位置相匹配,而元字符$对应于被搜索字符串的结束位置。
如果设置了这个标志,那么^还可以与被搜索字符串中的\n或\r之后的位置(即下一行的行首)想匹配,而$还可以与被搜索字符串中的\n或者\r之前的位置(即一行的行尾)相匹配。
没看懂!
后记:
这三个标记都是放在正则表达式的最后
注意事项:
当使用显式构造函数的方式来构造RegExp实例对象的时候,应将原始的正则表达式文本中的每个\都使用\\来替换,例如,下面两条语句是等价的:
var re=new RegExp("\\d{5}");//不喜欢,不直观
var re=/\d{5}/;
其他语言里面的正则表达式对象
java中的String.split就有一个参数正则表达式
Java中需要掌握Pattern,Matcher
2.RegExp对象-属性
属性分为两类:
所有对象实例共享的静态属性
单个对象实例的属性
静态属性:
.index
.
子匹配
$1...$9
lastParen $+
MSDN中,划分为两个对象来描述(老师说其实没有必要分开两个对象来做帮助):
RegExp对象
静态属性
正则表达式对象(Regular Expression)
实例属性
global 每次执行test,exec方法,都是从上一次的结果后面开始执行;否则就是重头开始执行
方法
test(str) 返回true/false
exec(str) 返回包含数据结果的数组对象
compile(“pattern”[,"flags"]) 编译可以是执行速度加快,不过是在没有其他正则表达式被使用的前提下面。
http://msdn.microsoft.com/en-us/library/9dthzd08(VS.94).aspx
关于JavaScript的帮助文档没有,不过JavaScript的电子书有几本:JavaScriptDOM编程艺术(英文版)、
JavaScript权威指南第4版(清晰)、JavaScript高级编程(中文),如果需要可以放到你的邮箱。。。
------其他回答(10分)---------
VS看MSDN
http://download.csdn.net/sort/tag/ href="http://biancheng.dnbcw.info/java/" target=_blank>javascript
www.w3school.com.cn/js/index.asp
------其他回答(5分)---------
创建方式
1)使用显式构造函数,语法为:new RegExp("pattern",[,"flags"])
2)使用隐式构造函数,采用纯粹的文本格式:/pattern/[flags]
flags标志字符:
-g用作全局标志
-i用作忽略大小写标志
-m用作多行标志
如果没有设置这个标志,那么元字符^只与整个被搜索字符串的开始位置相匹配,而元字符$对应于被搜索字符串的结束位置。
如果设置了这个标志,那么^还可以与被搜索字符串中的\n或\r之后的位置(即下一行的行首)想匹配,而$还可以与被搜索字符串中的\n或者\r之前的位置(即一行的行尾)相匹配。
没看懂!
后记:
这三个标记都是放在正则表达式的最后
这些都是模式匹配符,放在正则表达式的最后,当参数使用。 i:ignorCase忽略大小写 m:mutiple允许多行匹配 g:globle进行全局匹配,指匹配到目标串的结尾
举例而言:expando: "jQuery" + ( core_version + Math.random() ).replace( /\D/g, "" ) 这个正则表达式是用来去掉所有非数字字符的,需要多次匹配,所以不用^,还在最后用了g全局标志。
注意事项:
当使用显式构造函数的方式来构造RegExp实例对象的时候,应将原始的正则表达式文本中的每个\都使用\\来替换,例如,下面两条语句是等价的:
var re=new RegExp("\\d{5}");//不喜欢,不直观
var re=/\d{5}/;
其他语言里面的正则表达式对象
java中的String.split就有一个参数正则表达式
Java中需要掌握Pattern,Matcher
2.RegExp对象-属性
属性分为两类:
所有对象实例共享的静态属性
单个对象实例的属性
静态属性:
.index
.
子匹配
$1...$9
lastParen $+
MSDN中,划分为两个对象来描述(老师说其实没有必要分开两个对象来做帮助):
RegExp对象
静态属性
正则表达式对象(Regular Expression)
实例属性
global 每次执行test,exec方法,都是从上一次的结果后面开始执行;否则就是重头开始执行
方法
test(str) 返回true/false
exec(str) 返回包含数据结果的数组对象
compile(“pattern”[,"flags"]) 编译可以是执行速度加快,不过是在没有其他正则表达式被使用的前提下面。
http://msdn.microsoft.com/en-us/library/9dthzd08(VS.94).aspx
关于JavaScript的帮助文档没有,不过JavaScript的电子书有几本:JavaScriptDOM编程艺术(英文版)、
JavaScript权威指南第4版(清晰)、JavaScript高级编程(中文),如果需要可以放到你的邮箱。。。
------其他回答(10分)---------
VS看MSDN
http://download.csdn.net/sort/tag/ href="http://biancheng.dnbcw.info/java/" target=_blank>javascript
www.w3school.com.cn/js/index.asp
------其他回答(5分)---------
相关文章推荐
- 说说 JavaScript 正则表达式(RegExp 对象)
- JavaScript语法入门系列(七) 类和对象(正则表达式RegExp)
- JavaScript 正则表达式对象RegExp
- JavaScript RegExp(正则表达式) 对象
- JavaScript RegExp 正则表达式对象详细说明
- JavaScript RegExp 正则表达式对象详细说明
- Javascript中的“正则表达式对象”与“全局RegExp对象”
- javascript正则表达式 —— RegExp 对象
- JavaScript学习笔记-正则表达式(RegExp对象)
- 理顺 JavaScript (19) - 正则表达式对象 RegExp
- JavaScript中正则表达式RegExp对象的test方法
- JavaScript 正则表达式对象RegExp test方法慎用/g
- JavaScript 正则表达式(RegExp对象、属性、方法、String支持)
- 轻松学习JavaScript十四:JavaScript的RegExp对象(正则表达式)
- 详解JavaScript正则表达式之RegExp对象
- JavaScript之基础-10 JavaScript 正则表达式(概述、定义正则、RegExp对象、用于模式匹配的String方法)
- javascript RegExp对象(正则表达式)
- JavaScript中的String对象的常用方法、文本框对象的常用方法和事件、正则表达式的概念、正则表达式的几种构造方式、RegExp对象使用什么方法匹配正则表达式、
- javascript正则表达式(1)——RegExp对象与常用字符
- JavaScript 正则表达式对象RegExp test方法慎用/g