首頁 > 後端開發 > php教程 > php 正则表达式提取文本中的所有邮箱地址,不是一个邮箱

php 正则表达式提取文本中的所有邮箱地址,不是一个邮箱

WBOY
發布: 2016-06-06 20:13:51
原創
1366 人瀏覽過

php 提取文本中的所有邮箱地址,或者一个字符串中的所有邮箱地址
例如我的文本是:
汉字的是scdd test001@qq.com asda test002@qq.com 你后am test009@aa.com
匹配的结果应该是
test001@qq.com
test002@qq.com
test009@aa.com
我的代码如下;

<code><?php $str = '汉字的是scdd test001@qq.com asda test002@qq.com 你后am test009@aa.com ';
$preg = "/([a-z0-9\-_\.]+@[a-z0-9]+\.[a-z0-9\-_\.]+)+/i";
if (preg_match($preg, $str , $matches)) {
    print_r($matches);
}</code></code>
登入後複製
登入後複製

目前只能匹配到一个Email地址 test001@qq.com ,其他2个目前匹配不到,,,,,要使用贪婪模式匹配吗?
请指教!!

回复内容:

php 提取文本中的所有邮箱地址,或者一个字符串中的所有邮箱地址
例如我的文本是:
汉字的是scdd test001@qq.com asda test002@qq.com 你后am test009@aa.com
匹配的结果应该是
test001@qq.com
test002@qq.com
test009@aa.com
我的代码如下;

<code><?php $str = '汉字的是scdd test001@qq.com asda test002@qq.com 你后am test009@aa.com ';
$preg = "/([a-z0-9\-_\.]+@[a-z0-9]+\.[a-z0-9\-_\.]+)+/i";
if (preg_match($preg, $str , $matches)) {
    print_r($matches);
}</code></code>
登入後複製
登入後複製

目前只能匹配到一个Email地址 test001@qq.com ,其他2个目前匹配不到,,,,,要使用贪婪模式匹配吗?
请指教!!

问题已解决
应该使用 preg_match_all

相關標籤:
php
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板