2012-08-27 29 views
0

使用正則表達式,我需要在完全呈現的HTML頁面中查找並替換所有mailaddress,因爲我想要對它們進行垃圾郵件保護。準確地說,我想要所有地址除了他們在formular元素(因爲如果驗證的用戶輸入失敗,我仍然想顯示插入的mailaddress而不是替換的)。Mail-Regex與HTML表單元素中的地址不匹配

找到或寫一個正則表達式來簡單地搜索mailaddresses是不成問題的。問題是排除了公式元素。有沒有人有建議如何解決這個問題?這在正則表達式中可能嗎?

一些例子: 我想匹配「...我的內容,[email protected],更多內容......」 但我不想匹配:「...您的郵件:[email protected] ...「

我知道最好是解析HTML並簡單地跳過表單元素,但是性能很重要,正如我之前所說的,每次調用該網站時都會執行此任務...

感謝您的幫助!

回答

0

這可能是不可能的。請參閱:RegEx match open tags except XHTML self-contained tags開始。第二個正則表達式在「不」方面做得不好。 (有些正則表達式支持它,有些則不支持,但一切都很慢。)也許有人比我更好的正則表達式可能會幫助你,但我懷疑這樣做是不可能的。