在 PHP 中查找和替换电子邮件和电话号码

Jac*_*son 2 php email hide

我希望在这方面得到一些帮助,因为它让我有点困惑......我运行一个允许用户来回发送消息的网站,但在收件箱中我需要隐藏电子邮件和电话号码。

示例:这是示例电子邮件的样子。

嗨,我的电话是 +44 5555555,电子邮件是 jack@jack.com

我需要它是这样的:

嗨,我的电话是(电话隐藏)和电子邮件是(电子邮件隐藏)

你有什么想法吗?...我真的很感激!..

小智 5

$x = 'Hi, my phone is +44 5555555 and email is jack@jack.com';
$x = preg_replace('/[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,4}/i','(phone hidden)',$x); // extract email
$x = preg_replace('/(?:(?:\+?1\s*(?:[.-]\s*)?)?(?:\(\s*([2-9]1[02-9]|[2-9][02-8]1|[2-9][02-8][02-9])\s*\)|([2-9]1[02-9]|[2-9][02-8]1|[2-9][02-8][02-9]))\s*(?:[.-]\s*)?)?([2-9]1[02-9]|[2-9][02-9]1|[2-9][02-9]{2})\s*(?:[.-]\s*)?([0-9]{4})(?:\s*(?:#|x\.?|ext\.?|extension)\s*(\d+))?/','(email hidden)',$x); // extract phonenumber
echo $x; // Hi, my phone is (phone hidden) and email is (email hidden)
Run Code Online (Sandbox Code Playgroud)

kudo 用于将电话号码正则表达式转换为fatcat