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

JavaScript 用于模式匹配的 RegExp 方法

本篇日志先主要讨论 RegExp 对象的部分方法,RegExp 对象定义了两个用于模式匹配的方法,它们是exec()
和test()
下面我们逐一进行讲解
。呵,和上篇日志一样的介绍,看来套话,果然适用于多个场合。嗯。
exec() 检索字符串中的指定值,返回值是被找到的值,如果没有发现匹配,则返回 null:
主要的RegExp模式匹配方法是exec(),其与上一篇介绍的String对象的match方法相似,只不过它是以字符串为参数的RegExp方法,而不是以RegExp对象为参数的字符串方法。呼,这一句有点像绕口令,没办法,书上的原话,抄过来让大家乐一乐,呵。exec()方法在一个字符串中检索匹配,如果没有找到任何匹配返回null,如果它找到了一个匹配,将返回一个数组。
就像方法match()为非全局检索返回的数组一样。这个数组的元素0包含的是与正则表达式相匹配的字符串,余下的所有元素包含的是与子表达式相匹配的子串,而且属性index包含了匹配发生的字符的位置,属性input引用的是被检索的字符串。
/*
i is 0  http://www.xiaoxiaozi.com/index.php
i is 1  http
i is 2  www.xiaoxiaozi.com
i is 3  index.php
i is index  11
i is input  my home is http://www.xiaoxiaozi.com/index.php
*/
var
str =
'my home is http://www.xiaoxiaozi.com/index.php'
;
var
pattern =
/(\w+):\/\/([\w.]+)\/(\S*)/
;
//var result = str.match(pattern);
var
result =
pattern.exec
(
str)
;
for
(
i in
result)
{
        document.write
(
"i is "
+
i+
"  "
+
result[
i]
+
"<br/>"
)
;
}
与match()方法不同的是,exec()返回的数组类型不同,无论该正则表达式是否含有全局属性g。因为当含有全局属性g的时
候,match()方法返回的是一个匹配的数组,而调用exec()方法的RegExp有一个lastIndex属性,它将把该对象的lastIndex
属性设置到紧接着匹配子串的字符位置。
当同一个RegExp对象第二次调用exec()时,它将从lastIndex属性所指示的字符处开始检索,如果exec()没有发现任何匹配,它
会将lastIndex属性重围为0,(在任何时候你都可以将lastIndex属性设为0,每当你在一个字符串中找到最后一个匹配之前就开始用同一个
RegExp对象来检索另一个字符串,而放弃了原来的检索的时候就方法应该这样做)。这一特殊的行为使


相关文档:

JavaScript prototype 属性

定义与用法
The prototype property allows you to add properties and methods to an
object.
prototype属性允许你向一个对象添加属性和方法
Syntax
语法
object.prototype.name=value
Example 1
实例
In this example we will show how to use the prototype property to add a
property to an object:
在下 ......

利用javascript验证邮箱地址是否合法

源代码如下:
<!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>
    <title>验证邮箱地址合法性</title>
    <sc ......

Javascript在页面加载时的执行顺序

一、在HTML中嵌入Javasript的方法
直接在Javascript代码放在标记对<script>和</script>之间
由<script />标记的src属性制定外部的js文件
放在事件处理程序中,比如:<p onclick="alert('我是由onclick事件执行的Javascript')">点击我</p>
作为URL的主体,这个URL使用特殊的Javascript ......

JavaScript判断浏览器类型及版本

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

JavaScript实际应用:对层的控制

层的开发在实际应用中比较重要,比如漂浮广告等等,我这里简单探讨一下。
1.  控制层的显示或隐藏
两种办法,其实都是控制样式的。
办法一:控制 display 属性
<script language="javascript">
function show(status)
{
          document.getElemen ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号