可能是重复问题:
正则表达式部分隐藏电子邮件?
我正在编写一个脚本来隐藏电子邮件地址(因此test@domain.com变为t~~~@~~~~~~.com)。
在遵循这个问题的说明时 - 正则表达式部分隐藏电子邮件? - 我已经成功地将其显示为t~~~@domain.com,但是无法删除“domain”。
这是我目前的代码(假设$row->email是“test@domain.com”):-
$string = preg_replace("(?<=.).(?=.*@)","~", $row->email);
$string = preg_replace("(?<=@).[a-zA-Z0-9]*","~", $string);
然而,它只返回t~~~@domain.com。我不知道如何获取其余的域名部分。有什么想法吗?如果有人能够提供解决方案,使其变成t~~~@d~~~~~~.com,那就太好了。谢谢。