Posted Time:2003-5-9 18:21:40 Author:飞鹰 Click:1759 Source:www.ASPCool.com
正则表达式使用详解(二)
使用实例
在对正则表达式有了较为全面的了解之后,我们就来看一下如何在Perl,PHP,以及Javasrcipt中使用正则表达式。
通常,Perl中正则表达式的使用格式如下:
operator / regular-expression / string-to-replace / modifiers
运算符一项可以是m或s,分别代表匹配运算和替换运算。
其中,正则表达式一项是将要进行匹配或替换操作的模式,可以由任意字符,元字符,或定位符等组成。替换字符串一项是使用s运算符时,对查找到的模式匹配对象进行替换的字符串。最后的参数项用来控制不同的匹配或替换方式。例如:
s/geed/good/
将会在目标对象中查找第一个出现的geed字串,并将其替换为good。如果我们希望在目标对象的全局范围内执行多次查找—替换操作的话,可以使用参数 “g”,即s/love/lust/g。
此外,如果我们不需要限制匹配的大小写形式的话,可以使用参数 “i ”。例如,
m/JewEL/i
上述正则表达式将会与目标对象中的jewel,Jewel,或JEWEL相匹配。
在Perl中,使用专门的运算符“=~”指定正则表达式的匹配对象。例如:
$flag =~ s/abc/ABC/
上述正则表达式将会把变量$flag中的字串abc替换为ABC。
下面,我们就在Perl程序中加入正则表达式,验证用户邮件地址格式的有效性。代码如下:
#!/usr/bin/perl # get input print “What's your email address?/n”; $email = <STDIN> chomp($email); # match and display result if($email =~ /^([a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+(/.[a-zA-Z0-9_-])+/) { print(“Your email address is correct!/n”); } else { print(“Please try again!/n”); }
如果用户更偏爱PHP的话,可以使用ereg()函数进行模式匹配操作。ereg()函数的使用格式如下: ereg(pattern, string)
其中,pattern代表正则表达式的模式,而string则是执行查找替换操作的目标对象。同样是验证邮件地址,使用PHP编写的程序代码如下:
<?php if (ereg(“^([a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+(/.[a-zA-Z0-9_-])+”,$email)) { echo “Your email address is correct!”;} else { echo “Please try again!”;} ?> 最后,我们在来看一下Javasrcipt。Javasrcipt 1.2中带有一个功能强大的RegExp()对象,可以用来进行正则表达式的匹配操作。其中的test()方法可以检验目标对象中是否包含匹配模式,并相应的返回true或false。
我们可以使用Javasrcipt编写以下脚本,验证用户输入的邮件地址的有效性。
<html> <head> <srcipt language="Javasrcipt1.2"> <!-- start hiding function verifyAddress(obj) { var email = obj.email.value; var pattern = /^([a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+(/.[a-zA-Z0-9_-])+/; flag = pattern.test(email); if(flag) { alert(“Your email address is correct!”); return true; } else { alert(“Please try again!”); return false; } } // stop hiding --> </srcipt> </head> <body> <form onSubmit="return verifyAddress(this);"> <input name="email" type="text"> <input type="submit"> </form> </body> </html>
|
相关推荐
正则表达式语法详解 正则表达式语法详解 正则表达式语法详解 正则表达式语法详解 正则表达式语法详解
正则表达式详解正则表达式详解正则表达式详解正则表达式详解
VB 正则表达式 使用详解 VB 正则表达式 使用详解
正则表达式可以让用户通过使用一系列的特殊字符构建匹配模式,然后把匹配模式与数据文件、程序输入以及WEB页面的表单输入等目标对象进行比较,根据比较对象中是否包含匹配模式,执行相应的程序。 举例来说,...
java正则表达式详解java正则表达式详解java正则表达式详解java正则表达式详解java正则表达式详解java正则表达式详解java正则表达式详解
java正则表达式详解java正则表达式详解java正则表达式详解java正则表达式详解java正则表达式详解java正则表达式详解
正则表达式 详解 基础 正则表达式之道(A Tao of Regular Expressions)
Java正则表达式使用详解(2015版).pdf
java,正则表达式,详解,java正则表达式,PDF
Oracle正则表达式详解,用法+实例。
正则表达式是编程技术中比较复杂的一个,掌握起来相对困难,但在数据检索等到高级编程中又几乎离不开。本文非常详细地介绍了c语言正则表达式的各种用法。
javascript 正则表达式使用详解
VBScript 正则表达式详解。详细介绍这则表达式的各种操作方法
关于javascript的正则表达式使用详解
如果我们问那些UNIX系统的爱好者他们最喜欢什么,答案除了稳定的系统和可以远程启动之外,十有八九的人会提到正则表达式;如果我们再问他们最头痛的是什么,可能除了复杂的进程控制和安装过程之外,还会是正则表达式...
jsp中正则表达式使用详解,看了就不难,快看看吧
正则表达式使用详解(学习正则)正则表达式使用详解(学习正则)正则表达式使用详解(学习正则)正则表达式使用详解(学习正则)
Jva正则表达式Jva正则表达式Jva正则表达式Jva正则表达式Jva正则表达式
java 正则表达式 正则表达式详解大全 阅读以后你会明白各种 表达式符号的全部意义 让正则表达式不在困难 是难得的好资源啊
正则表达式,可以说是任何一种编程语言都提供的机制,它主要是提供了对字符串的处理能力