正则表达式使用详解(二)
在对正则表达式有了较为全面的了解之后,我们就来看一下如何在Perl,PHP,以及JavaScript/ target=_blank>JavaScript中使用正则表达式。 通常,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 “Whats
your email address?\n”; $email = $#@60;STDIN$#@62;; chomp($email); # match and display result if
($email =~ /^()+@()+(\.)+/) { print(“Your email address is correct!
\n”); } else { print(“Please try again!\n”); } 如果用户更偏爱PHP的话,可以使用ereg()
函数进行模式匹配操作。ereg()函数的使用格式如下: ereg(pattern, string) 其中,pattern代表正则表达式的模式,
而string则是执行查找替换操作的目标对象。同样是验证邮件地址,使用PHP编写的程序代码如下: $#@60;?php if
(ereg(“^()+(\.)+”,$email)) { echo “Your email address is
correct!”;} else { echo “Please try again!”;} ?$#@62; 最后,我们在来看一下JavaScript/
target=_blank>JavaScript。JavaScript/ target=_blank>JavaScript 1.2中带有一个功能强大的RegExp()对象,可以用来进行
正则表达式的匹配操作。其中的test()方法可以检验目标对象中是否包含匹配模式,并相应的返回true或false。 我们可以使
用JavaScript/ target=_blank>JavaScript编写以下脚本,验证用户输入的邮件地址的有效性。 $#@60;html$#@62; $#@
60;head$#@62; $#@60;script language=Javascript1.2$#@62; $#@60;!-- start hiding function
verifyAddress(obj) { var email = obj.email.value; var pattern = /^()
+@()+(\.)+/; flag = pattern.test(email); if(flag) {
alert(“Your email address is correct!”); return true; } else
{ alert(“Please try again!”); return false; } }
// stop hiding --$#@62; $#@60;/script$#@62; $#@60;/head$#@62; $#@60;body$#@62; $#@
60;form onSubmit=return verifyAddress(this);$#@62; $#@60;input name=email type=text$#@62; $#@60;input
type=submit$#@62; $#@60;/form$#@62; $#@60;/body$#@62; $#@60;/html$#@62;
转自:http://edu.chinaz.com
正则表达式使用详解(二)
在对正则表达式有了较为全面的了解之后,我们就来看一下如何在Perl,PHP,以及JavaScript/ target=_blank>JavaScript中使用正则表达式。 通常,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 “Whats
your email address?\n”; $email = $#@60;STDIN$#@62;; chomp($email); # match and display result if
($email =~ /^()+@()+(\.)+/) { print(“Your email address is correct!
\n”); } else { print(“Please try again!\n”); } 如果用户更偏爱PHP的话,可以使用ereg()
函数进行模式匹配操作。ereg()函数的使用格式如下: ereg(pattern, string) 其中,pattern代表正则表达式的模式,
而string则是执行查找替换操作的目标对象。同样是验证邮件地址,使用PHP编写的程序代码如下: $#@60;?php if
(ereg(“^()+(\.)+”,$email)) { echo “Your email address is
correct!”;} else { echo “Please try again!”;} ?$#@62; 最后,我们在来看一下JavaScript/
target=_blank>JavaScript。JavaScript/ target=_blank>JavaScript 1.2中带有一个功能强大的RegExp()对象,可以用来进行
正则表达式的匹配操作。其中的test()方法可以检验目标对象中是否包含匹配模式,并相应的返回true或false。 我们可以使
用JavaScript/ target=_blank>JavaScript编写以下脚本,验证用户输入的邮件地址的有效性。 $#@60;html$#@62; $#@
60;head$#@62; $#@60;script language=Javascript1.2$#@62; $#@60;!-- start hiding function
verifyAddress(obj) { var email = obj.email.value; var pattern = /^()
+@()+(\.)+/; flag = pattern.test(email); if(flag) {
alert(“Your email address is correct!”); return true; } else
{ alert(“Please try again!”); return false; } }
// stop hiding --$#@62; $#@60;/script$#@62; $#@60;/head$#@62; $#@60;body$#@62; $#@
60;form onSubmit=return verifyAddress(this);$#@62; $#@60;input name=email type=text$#@62; $#@60;input
type=submit$#@62; $#@60;/form$#@62; $#@60;/body$#@62; $#@60;/html$#@62;
转自:http://edu.chinaz.com
页:
[1]