易截截图软件、单文件、免安装、纯绿色、仅160KB

JavaScript 正则表达式 选择、分组和引用

JavaScript的正则表达式支持布尔操作,除了作为 选择的“布尔或”操作之外,正则表达式还支持分组和引用
。其实选择、分组和引用的作用分别为:指定选择项、对子表达式分组和引用 前一子表达式的特殊字符。
正则表达式的选择:
所谓选择即在多个条件里面选择一个,比如说卖水果的大爷说送你个水果,你可以选择“梨”,“苹果”,“西瓜”中的任何一个。当然你会选择西瓜,呵呵。
字符”|”用于分隔供选择的字符
,例如/西瓜|梨|苹果/匹配的是“西瓜”,“梨”,或者是“苹果”。同样我要
是想根据昨天讲过的字符类去匹配一些规则,比如我想匹配3个数字,或者是4个小写字母就可以用模式/\d{3}|[a-z]{4}/,呵呵,咋样?即了解
了选择,又用上了字符类,同时呢我们还用到了重复,这几天讲的东西都复习了一遍,哈哈。
选择项是从左到右考虑,直到发现了匹配项。如果左边的选择项匹配,则忽略右边的匹配项,即使它产生更好的匹配。
其实上面的话是很好理解的,还是拿大爷送你水果的例子,大爷第一次拿出西瓜,问你要不要?如果你选择了西瓜,大爷自然不会再问你要不要苹果或者梨了。而如果你不要西瓜,那么大爷会再拿出个梨,问你要不要?就是这个道理。
正则表达式的分组:
我们可以通过使用小括号来对正则表达式进行分组
。所谓分组,其实可以理解为合作伙伴,且是无商业利益的,合作伙伴之间的关系是一荣俱荣,一损俱损。也就是说把括号内的东西当成一个小组,一个单元。分组就就是正则表达式中的子表达式,这个我们下面的引用会讲到。
一个单元就说明后面的重复规则,与前后小组间的“或”关系,都是以小组为单位的。小组里的东西是统一处理的。
//如下模式即可以匹配java,也可以匹配javascript
//因为?表示的是出现0次或1次,如果一次不出现那么就匹配的是java
//否则匹配的就是javascript
var
pattern =
/java(script)?/
;
//下面代码返回的是abcdcd,cd,ef,,efnull
var
patt1=
new
RegExp(
"(ab|cd)+|(ef)"
,
"g"
)
;
do
{
result=
patt1.exec
(
"abcdcdef"
)
;
document.write
(
result)
;
}
while
(
result!=
null
)
在JavaScript1.5中,无须创建带编码的引用就可以将正则表达式中的项目进行组合。它不是以括号对项目进行分组,而是以”(?:”和&r


相关文档:

Javascript代码实现图片玻璃特效

文件内容如下:(两个文件glossy.js和glossy.html)
/**********************************  glossy.js  ***********************************/
 /**
* glossy.js 1.31 (19-Jul-2007)
* (c) by Christian Effenberger
* All Rights Reserved
* Source: glossy.netzgesta.de
* Distrib ......

JavaScript判断浏览器类型及版本

      你知道世界上有多少种浏览器吗?除了我们熟知的IE, Firefox, Opera, Safari四大浏览器之外,世界上还有近百种浏览器。
       几天前,浏览器家族有刚诞生了一位小王子,就是Google推出的Chrome浏览器。由于Chrome出生名门,尽管他还是个小家伙,没有人敢小 ......

javascript;拼图游戏(可自选图片和设置行列数)

思路:浏览图片,读取其宽度ImageW,高度值ImageH。读取用户输入的分成几行Row几列Col。
         每个方块:boxW=ImageW/Col;boxH=ImageH/Row;
         在1到Row*Col中随机,第i个图片的位置设为pos【i】。然后动态创建div生成Row* ......

[JavaScript]类之三


详解javascript类继承机制的原理
目前 javascript的实现继承方式并不是通过“extend”关键字来实现的,而是通过constructor function和prototype属性来实现继承。首先我们创建一个animal类
js 代码
 
 var animal = function(){  //这就是constructor function 了&nbs ......

javascript 中的继承方法

1.可以通过prototype属性,实现继承方法的方式,这种方式就是java语言中继承的变换形式。
 // Create the constructor for a Person object
function Person( name ) {
    this.name = name;
}
// Add a new method to the Person object
Person.prototype.getName = function() {
   ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号