如何从文本域字段中提取电子邮件地址

3
我正在使用cakephp。我有一个文本区域,用户可以在其中粘贴数据,我使用tinymce插件来格式化文本。我已经警告用户不要在文本区域中输入电话号码或电子邮件地址。但是,我不想冒险。
有没有办法从文本区域中提取电话号码和电子邮件,并将其替换为类似于XXXX@gmail.com的内容?
感谢您的任何帮助。
2个回答

3

以下是我想到的一种用隐藏方式替换电子邮件地址的方法:

$str = "My e-mail is shown@gmail.com Contact me for more details";
$str = preg_replace("/([a-zA-Z0-9\._]+)(@[a-zA-Z0-9\-\.]+)/", "hidden\\2", $str);
print($str);

电子邮件的正则表达式不是最好的,但它适用于您的示例。 您可以在http://www.regexlib.com/上获取更多有趣的正则表达式(电子邮件和电话号码),并使用简单的preg_replace将它们应用到您的项目中。

1
你可以这样做: $string = "blabla@blablabla.com"; $parts = explode("@",$string); \\$parts[0] 包含本地部分 \\$parts[1] 包含域名。 请记住,尽管不常见,RFC 822定义的格式允许“@”符号出现在引号中。这意味着:“bl@bla"@blablabla.com 在技术上是正确的。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接