热门关键字:  PHP  Cisco  seo  网络广告 虚拟主机 中文域名
当前位置 :| 主页>编程开发>PHP>常用函数>

如何在 PHP 中使用正则表达式

来源:IBM 作者: 时间:2006-03-25 点击:

PCRE 替换

在 PHP 中进行 PCRE 替换与 POSIX 替换类似,不同之处在于使用的是 preg_replace() 而非 ereg_replace()eregi_replace()

preg_replace()

preg_replace() 函数使用 PCRE 进行替换。它需要这样几个参数:正则表达式、替换表达式和原始字符串。您还可以选择提供希望的最大替换数,以及以所完成的替换数填充的变量。示例如下:


清单 8. preg_replace() 函数



<?php
$orig_string = "5555555555";
printf("Original string is '%s'\n", $orig_string);
$re = "/^(\d{3})(\d{3})(\d{4})$/";
// Syntax is preg_replace( regex, replacement, string \
[, limit [, out_count]] );
$new_string = preg_replace($re, "(\\1) \\2-\\3", $orig_string);
printf("New string is '%s'\n", $new_string);
?>

本例快速演示了捕获部分文本及使用反向引用 的方法,如 \\1。这些反向引用会插入圆括号内所匹配的任意文本中,在本例中,\\1 匹配第 1 组 (\d{3})

在示例中,您可使用 substr 将电话号码分割开来,而对字符串只需进行少量更改,要依靠 substr 来可靠地捕获正确文本会更加困难。

如果字符串的形式可为 (555)5555555,您可将表达式修改为 ^(?(\d{3}))?(\d{3})(\d{4})$ 以查找任意圆括号。


上一篇:通用控件校验函数
下一篇:没有了
最新评论共有 0 位网友发表了评论
发表评论
评论内容:不能超过250字,需审核,请自觉遵守互联网相关政策法规。
用户名: 密码:
匿名?
注册
赞助商连接