您的位置:首页 > Web前端 > JavaScript

JavaScript(2):基础部分之正则表达式

2012-09-02 23:46 441 查看
22.定义正则表达式:

var varname = /pattern/flags ;

varname : 变量名

pattern : 为指定匹配模式的正则表达式

flags : 0个或多个的可选项,有:

【1】 i ------- 忽略大小写

【2】 g ------- 全局匹配,即匹配字符串中出现的所有模式

【3】 m ------- 进行多行匹配

如:

var language = /JavaScript/ig ;

var date = /1994/ ;

23.正则表达式对象

使用构造函数构造函数RegExp()创建正则表达式:

var varname = new RegExp("pattern" [,"flags"]) ;

flags:可省略

如:

var language = new RegExp("JavaScript","ig") ;

var date = new RegExp("1994") ;

24.RegExp对象的属性

(1)index属性。是当前表达式模式首次匹配内容的开始位置,从0开始计数。其初始值为-1,每次成功匹配时,index属性都会随之改变。
(2)input属性。返回当前所作用的字符串,可以简写为$_,初始值为空字符串""。
(3)lastIndex属性。是当前表达式模式首次匹配内容中最后一个字符的下一个位置,从0开始计数,常被作为继续搜索时的起始位置,初始值为-1,表示从起始位置开始搜索,每次成功匹配时,lastIndex属性值都会随之改变。
(4)lastMatch属性。是当前表达式模式的最后一个匹配字符串是当前表达式模式中最后的子匹配所匹配到的子字符串,可以简写为$+。其初始值为空字符串""。每次成功匹配时,lastParen属性值都会随之改变。 ,可以简写为$&。其初始值为空字符串""。在每次成功匹配时,lastMatch属性值都会随之改变。

(5)lastParen属性。如果表达式模式中有括起来的子匹配,
(6)leftContext属性。是当前表达式模式最后一个匹配字符串左边的所有内容,可以简写为$`(其中“'”为键盘上“Esc”下边的反单引号)。初始值为空字符串""。每次成功匹配时,其属性值都会随之改变。
(7)rightContext属性。是当前表达式模式最后一个匹配字符串右边的所有内容,可以简写为$'。初始值为空字符串""。每次成功匹配时,其属性值都会随之改变。
(8)$1…$9属性。这些属性是只读的。如果表达式模式中有括起来的子匹配,$1…$9属性值分别是第1个到第9个子匹配所捕获到的内容。如果有超过9个以上的子匹配,$1…$9属性分别对应最后的9个子匹配。在一个表达式模式中,可以指定任意多个带括号的子匹配,但RegExp对象只能存储最后的9个子匹配的结果。在RegExp实例对象的一些方法所返回的结果数组中,可以获得所有圆括号内的子匹配结果。

25.正则表达式的String方法

match(regex) :在一个数组中返回与正则表达式regex相匹配的字串

View Code

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>字符串对象split()方法的使用</title>
<script language="javascript">
{
var myArray = new Array();
var s = "javaScript,C,C++,Java,Visual Basic" ;
var regex = /,/ ;//定义正则表达式
myArray = s.split(regex);//使用split()方法分隔字符
document.write("字符分隔的结果为:"+"<br>");
for(var i in myArray)
{
document.write("  "+myArray[i]+"<br>");
}
}
</script>
</head>

<body>
</body>
</html>


result:

字符分隔的结果为:
javaScript
C
C++
Java
Visual Basic

拓展阅读:

/article/5439603.html

http://www.iteye.com/topic/481228

http://zmingcx.com/javascript-regular-expression-real-classic.html

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: