php正则表达式:如何获取段落中的所有电子邮件地址
我想获取一个段落中的所有电子邮件地址。你能帮我吗
非常感谢
I want to fetch all the email address in a paragraph. could you please help me
Thanks a lot
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(5)
在此处查找电子邮件正则表达式:
http://www.regular-expressions.info/email.html< /a>
它甚至有支持电子邮件正则表达式的“官方标准:RFC 2822”。
Look here for Email regexes:
http://www.regular-expressions.info/email.html
It even has the "The Official Standard: RFC 2822" supporting email regexes.
您可以使用 preg_match_all 函数。语法如下:
其中:
正则表达式可以根据您希望它的松紧程度而变化。尝试制作您自己的,以便它遵循您的标准,但如果您遇到问题,您可以使用 Google 电子邮件正则表达式。
PS 我希望您不打算用它来发送垃圾邮件。
You can use the preg_match_all function. The syntax would be like this:
where:
A regular expression can vary depending on how loose or tight you want it to be. Try crafting your own, so that it follows your standards, but if you're having trouble, you can just Google Email Regular Expressions.
P.S. I hope you're not planning to use this to spam somehow.
正如其他人所建议的,请在您的问题上投入更多精力。
以下是您所追求的一个非常基本的实现。它确实会忽略某些电子邮件类型,但是嘿,这与您投入的精力相同。
$text
是您的段落。$emails
是匹配值的数组。As suggested by others, please put more for of an effort into your questions.
The following is a very basic implementation of what you're after. It does ignore some email types, but hey, its the same amount of effort you put in.
$text
is your paragraph.$emails
is the array of matched values.试试这个:
正则表达式:
/[-.\w]+@[-.\w]+/i
Try this:
regEx:
/[-.\w]+@[-.\w]+/i