欢迎来到360期刊网
360期刊网
客服电话:4006-587-789 客服在线时间:09:00~22:30(节假日不休息) 客服邮箱:360qikan@vip.163.com

正则表达式在php中的应用

时间:2012-10-25 11:36来源:未知 作者:360期刊网1 点击:

  正则表达式在web系统中的应用广泛,可以进行数据格式检测、替换相关文本、提取感兴趣的文本内容等。

  例:验证字符串中E-mail地址的合怯性邮件地址格式是<用户名@域名>,对于用户名,除了数字和字母外,有的允许有"一"有的允许有".",也有的两者皆可,或者允许其他的特殊字符。对此我们只能根据具体情况判断。文中假设除字母和数字外还允许""""并且""""不能出现在首末位。""一"不能相连。域名中各段除数字和字母外只允许出现"一""一"且不能出现在首位和末位,各段用""连接.我们还可从域名得知最后一段大于一位且只有字母。根据以上内容我们可以写出表达式来判断该串是否是合讼的邮件地址。

  分步解释如下:

  ^:匹配开始([a-zO-9A-Z]+[-丨.]?)+:数字或字母大于l位"—"或""以上组合重复l次以上[a-zO-9A一Z]:用户名以数字或字母结尾@:匹配"@"([a-zO-9A-Z]+:匹配多位数字或字母(一[a-zO-9A-Z]+)?:匹配一加多位数字或字母0次或1次.:匹配".")+:匹配括号中内容多次[a-zA-Zj{2,}:匹配字母2次以上$:匹配结尾把上面的各项组合→起,就可以匹配一个比较全面的邮件地址,正则表达式如下:

  ^([a-zO-9 A - Z]+[-I.]?)+[a一zO-9A-Z]@([a-zO-9A - Z]+( -[a-zO-9 A - Z]+ )?.)十[a-zA-Z]{2,}$实现匹配验证的php程序脚本如下:

  <? php

  $email="lgj@ 163. com",11要检测的email地址if (preg_match(" I飞[a-zO-9A-Z]+[|.]? )+[a-zO-9 A - Z]@([a-zO-9A-Z]+(-[azO-9A-Z]+)?. )+[a-zA-Zj{2, }$I$email)){ I I开始检测IJemail地址,不匹配返回Oecho"E-mail地址格式错误";}

  else {echo"E-mail地址格式正确";}

  ? >

  4结语正则表达式语也简洁、功能强大,特别在对数据的验证问题上。在日常数据处理与软件开发中,正则表达式已成为不可缺少的工具,相信随着web网的发展,正则表达式的应用会越来越强大越来越易使用。

  本文由360期刊网整理发布,转载请注明出处!