我需要從一個字符串中刪除所有電子郵件地址和鏈接,並將其替換爲「[已刪除]」,並且我對於如何執行該操作有點遺憾。
有人可以幫助我嗎?
謝謝。如何從PHP中的字符串中刪除電子郵件地址和鏈接?
0
A
回答
13
您可以使用preg_replace來做到這一點。
的電子郵件:
$pattern = "/[^@\s]*@[^@\s]*\.[^@\s]*/";
$replacement = "[removed]";
preg_replace($pattern, $replacement, $string);
對於網址:
$pattern = "/[a-zA-Z]*[:\/\/]*[A-Za-z0-9\-_]+\.+[A-Za-z0-9\.\/%&=\?\-_]+/i";
$replacement = "[removed]";
preg_replace($pattern, $replacement, $string);
資源
PHP手冊條目:http://php.net/manual/en/function.preg-replace.php
信貸,信貸是由於:電子郵件正則表達式取自preg_match ma取自NPAGE和URL的正則表達式:http://www.weberdev.com/get_example-4227.html
1
試試這個:
$patterns = array('<[\w.][email protected][\w.]+>', '<\w{3,6}:(?:(?://)|(?:\\\\))[^\s]+>');
$matches = array('[email removed]', '[link removed]');
$newString = preg_replace($patterns, $matches, $stringToBeMatched);
注意:你可以傳遞的模式陣列,並運行它兩次,而不是匹配到的preg_replace。
1
我要去upvote的答案已被刪除。它鏈接到Linux期刊文章Validate an E-Mail Address with PHP, the Right Way,指出任何人提出的幾乎每個電子郵件正則表達式都有什麼問題。
電子郵件地址的有效格式範圍比大多數人想象的要廣泛得多。
0
相關問題
- 1. 從Ruby中的字符串中刪除電子郵件地址
- 2. CakePHP從字符串中刪除電子郵件地址
- 3. 如何從PHP中的字符串中刪除電子郵件地址和電話號碼?
- 4. 如何從字符串中獲取電子郵件地址
- 5. 查找字符串中的所有鏈接和電子郵件地址
- 6. 的NSString刪除從電子郵件地址的字符
- 7. 刪除電子郵件地址中的無效字符
- 8. 從MySQL刪除電子郵件地址
- 9. 刪除@ in和電子郵件地址後的字符 - ASP.NET
- 10. PHP從字符串中刪除電話號碼和電子郵件
- 11. 如何從電子郵件地址字符串中提取電子郵件地址
- 12. 從條紋結賬中刪除「電子郵件地址」字段
- 13. 如何從長字符串中識別電子郵件地址並將電子郵件地址替換爲我公司的電子郵件地址?
- 14. 使用Oracle從字符串中提取電子郵件地址
- 15. 從電子郵件地址中重新獲得字符串
- 16. 從字符串中提取電子郵件地址
- 17. 格式字符串電子郵件到電子郵件鏈接
- 18. PHP從電子郵件列表中刪除電子郵件
- 19. 刪除電子郵件地址?
- 20. 的MySQL從電子郵件中刪除點地址
- 21. 從URL中刪除不需要的電子郵件地址
- 22. 從MYSQL表中刪除重複的電子郵件地址
- 23. PHP搜索字符串的電子郵件地址
- 24. 從索引索引中刪除電子郵件地址
- 25. 查找字符串中的電子郵件地址 - ColdFusion 9
- 26. 如何從PHP中刪除Maildir中的電子郵件?
- 27. 從vb.net的字符串解析電子郵件地址
- 28. 如何從這個字符串中取出電子郵件地址?
- 29. 如何從字符串中使用NSRegularExpression提取電子郵件地址
- 30. 如何使用perl從字符串中提取電子郵件地址?
嗯只是試過,並刪除了我的整個文字.... – JEagle 2010-07-21 19:56:54
你可以發佈一小段文字樣本? – Josiah 2010-07-21 20:00:32
這只是我的隨機文本。沒有具體的,只是一些電子郵件地址和一些鏈接 – JEagle 2010-07-21 20:08:12