任务2-6 IP地址有效性验证

需求:

IP地址必须具备四个0~255的整数,每两个数字之间用小数点分隔。

分析:

任务的重点与难点是如何描述格式信息。JavaScript为编程者提供了按正则表达式进行正则验证和提取的方法。

实现:

第一步,新建文件夹06,并在06文件夹中新建一个HTML页面。

第二步,在<body>标签内添加清单2-14所示的代码。

清单2-14 IP地址输入界面源代码

第三步,在页面中建立清单2-15所示的验证脚本。

清单2-15 IP地址输入有效性验证脚本

说明

(1)构造正则表达式对象实例的方法有两种:

①直接给出正则表达式实例,如:var re=/(\d+)\.(\d+)\.(\d+)\.(\d+)/g;

②以字符串为参数构造正则表达式实例,如var re= new RegExp("(\d+)\.(\d+)\.(\d+)\.(\d+)"," g ")。

(2)用“\d”表示一个数字字符,用“+”表示一个以上的字符,用“\.”表示小数点(“.”表示任意一个字符),更详细的正则表达式请查找有关资源。

(3)正则表达式/(\d+)\.(\d+)\.(\d+)\.(\d+)/g由两部分组成:

①/(\d+)\.(\d+)\.(\d+)\.(\d+)表示格式;

②/g表示查找方式,全文查找(而不是在找到第一个之后就停止)。

(4)正则表达式的方法test有两个作用:

①进行验证测试,返回值为true表示验证成功,提供的串匹配正则表达式;

②提取串中匹配子串,利用正则表达式最外层小括号指定子串模式,使用RegExp.$1表达式即可提取第一个匹配子串。

(5)常用的验证除了用于判断IP地址格式外,还有整数格式、正整数格式、小数的数字格式、端口号格式、E-mail格式、金额格式、手机号码格式、字符串格式1(只由英文字母、数字和下画线组成)、字符串格式2(只由汉字、字母、数字组成)、日期格式等。

(6)为了提高JavaScript代码的重用性,将JavaScript存入js文件中,在页面上可以通过清单2-16所示的方法引用js文件,从而达到调用其中函数的目的。

清单2-16 引用js文件