常用正则表达式及关键字高亮显示方法

发几个常用的正则表达式匹配。另有一个语法高亮的实现方法。
//用户名验证 下划线或字母开头,6-10位,另w 匹配可能跟区域有关,一般匹配字母、数字、下划线 function is_username($str) {  $reg = "/^[_a-zA-Z][-w]{5,9}$/";  if(preg_match($reg,$str) == 1)   return true;  else   return false; }
//密码验证 6到10位,w同上 function is_password($str) {  $reg = "/^[w]{6,10}$/";  if (preg_match($reg,$str) == 1)   return true;  else   return false; }
//电子邮件验证 @前的用户名由字母、下划线开头 function is_email($str) {  $reg = "/^[_a-zA-Z][-w]*@[w-]+(.[w]+)+$/";  if(preg_match($reg,$str) == 1)   return true;  else   return false; }
//日期验证 匹配xxxx/xx/xx xxxx-xx-xx xxxx/x/x xxxx-x-x格式 function is_date($str) {  $reg = "/^d{4}[-/][0-1]?[0-9][-/][0-3]?[0-9]$/";  if (preg_match($reg,$str) == 1)   return true;  else   return false; }
<?php  $keyword = "高亮";  ob_start(); ?> <p>ob_start()函数对输出内容进行缓存,ob_get_contents函数获得要输出的内容,使用正则替换函数,将内容中的关键字高亮显示。高亮显示即添加一个背景色或者改变字体的颜色</p> <p>这里的关键字是“高亮”。</p> <?php  $str = ob_get_contents();  $str = preg_replace("/".$keyword."/",       "<span style ='color:#ff0000;background-color:#ee2;'>".$keyword."</span>",       $str);  ob_end_clean();  echo $str; ?>
posted @ 2010-07-31 22:47  leetom  阅读(1127)  评论(0编辑  收藏  举报