[英]Remove Invalid characters in an e-mail address
我正在嘗試找出如何刪除電子郵件地址中的所有無效字符。
例如:email =“taeo͝'; st@yy.com”(。是電子郵件字符),結果應為:email =“taest@yy.com”
我使用以下電子郵件模式:
String email_pattern = "^[^[_A-Za-z0-9-\\+]+(\\.[_A-Za-z0-9-]+)*@"+ "[A-Za-z0-9-]+(\\.[A-Za-z0-9]+)*(\\.[A-Za-z]{2,})$]";
String modifiedEmail = email.replaceAll(email_pattern,"");
但上面的代碼給出了結果:email =“aest@yy.com”,但預計“taest@yy.com”
任何建議或更好的方法將不勝感激。
這是一篇很好的博客文章,說明為什么你不應該過濾你的電子郵件地址: http : //davidcel.is/blog/2012/09/06/stop-validating-email-addresses-with-regex/
TL; DR:檢查是否有@(可選擇一個句點)並發送測試郵件。
大衛建議使用這個正則表達式:
/.+@.+\..+/
進一步思考:您還可以測試未經身份驗證使用的已知電子郵件地址提供商(例如http://trashmail.com/ )。
我通過使用模式匹配器解決了它。
email = "testo͝';@.com.my"
String EMAIl_PATTERN = "[^a-zA-Z0-9!#$%&@'*+-/=?^_`{|}~.]+";
modifiedEmail = email.replaceAll(EMAIl_PATTERN, "");
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.