我有一个挑战,我希望SO社区能够帮助我。从文档中删除电话号码
我试图解析我的PHP应用程序中的很多html文档,以删除个人详细信息,例如姓名,地址和电话号码。我可以在没有太多麻烦的情况下删除大部分这些细节,但是电话号码对我来说是一个真正的问题。
我的想法是从这些文档中获取文本,并使用正则表达式来识别电话号码并用另一个值替换它们,例如'xxxx'。
我有2个正则表达式,我正在使用一个英国固定电话号码和一个英国手机号码。
但是,当我尝试运行它们对文本它只是返回一个空字符串。
我使用下面的preg_replace代码:
$pattens = array(
'/^(((\+44\s?\d{4}|\(?0\d{4}\)?)\s?\d{3}\s?\d{3})|((\+44\s?\d{3}|\(?0\d{3}\)?)\s?\d{3}\s?\d{4})|((\+44\s?\d{2}|\(?0\d{2}\)?)\s?\d{4}\s?\d{4}))(\s?\#(\d{4}|\d{3}))?$/',
'/^(\+44\s?7\d{3}|\(?07\d{3}\)?)\s?\d{3}\s?\d{3}$/'
);
$replace = array('xxxxx', 'xxxxx');
//do the search for the numbers.
$updatedContents = preg_replace($pattens, $replace, $htmlContents);
目前,这是造成我很多挠头,因为我认为我有这个钉的,但此刻我看不出有什么错误??
我相信这是非常简单的事情。
感谢,
格兰特
你能发表一些示例输入吗? – 2010-05-02 13:49:05
该示例将是下列其中一个+44(0)777 123456或07777123456或+44(0)207 123435等 – 2010-05-02 14:41:52