php开发中常用到正则函数

在开发有preg_replace preg_grep preg_split preg_replace_callback preg_quote进行一些必要操作,php实例代码如下:

  1. $temp[0]="abc";
  2. $temp[1]=123;
  3. $temp[2]="us.";
  4. $temp[3]=5;
  5. $temp[4]=58;
  6. $temp[5]="cs";
  7. //以上代码定义一个数组,其中既有数字也有字符串
  8. echo "数组temp的内容为:";
  9. echo "<p>";
  10. //通过循环输出数组内容
  11. for($i=0;$i<count($temp);$i++)
  12. {
  13. echo $temp[$i];
  14. echo ",";
  15. }
  16. echo "<p>";
  17. echo "经过preg_grep()处理过之后的新数组为:";
  18. $temp2=preg_grep("/^(d)d*/",$temp); //使用preg_grep进行处理
  19. //上式的正则表达式模式中"//"为定界符,其内容为所有整数元素
  20. echo "<p>";
  21. print_r($temp2); //通过循环输出新数组内容
  22. //
  23. $str='string'; //定义字符串
  24. $chars=preg_split('//',$str,-1,preg_split_no_empty); //用正则表达式执行分割操作
  25. print_r($chars); //输出结果数组:array([0]=>s[1]=>t[2]=>r[3]=>i[4]=>n[5]=>g)
  26. //
  27. $string="april 15, 2003"; //定义字符串
  28. $pattern="/(w+)(d+),(d+)/i"; //定义匹配模式
  29. $replacement="${1}1,$3"; //定义替换内容
  30. print preg_replace($pattern,$replacement,$string); //输出结果april1,2003
  31. //
  32. $text="april fools day is 04/01/2002n"; //定义字符串
  33. $text.="last christmas was 12/24/2001n"; //字符串更新
  34. $pattern="|(d{2}/d{2}/)(d{4})|"; //定义匹配模式
  35. function next_year($matches) //定义回调函数
  36. {
  37. return $matches[1].($matches[2]+1); //返回值
  38. }
  39. $result=preg_replace_callback($pattern,"next_year",$text); //用回调函数执行搜索替换
  40. echo $result; //输出结果"april fools day is 04/01/2003 last christmas was 12/24/2002"
  41. //开源代码phpfensi.com
  42. //
  43. $keywords="'php'"; //定义字符串
  44. $keywords=preg_quote($keywords,"'"); //转义其中的"'"
  45. echo $keywords;