在 MySQL 資料庫找出 Email 格式不正確的信箱

分類: 技術分享 作者: admin

9 三月 2009

整理資料庫時,總會遇到 Email 格式不正確的問題。這時只要利用 MySQL 的正規式就可以輕鬆找出有問題的 Email 了。

SELECT *
FROM `users`
WHERE email NOT
REGEXP
'^[a-zA-Z0-9][a-zA-Z0-9._+-]*[a-zA-Z0-9_-]@[a-zA-Z0-9][a-zA-Z0-9._-]*[a-zA-Z0-9]+..[a-zA-Z]{2,4}$'

(感謝 Ori Pekelman 發表的語法,以上有稍做修改)

說明:

  • @ 前的帳號分為「頭身尾」三段,頭只能為英數字,身可以用 + 及 . 號,身末可以用 _ 及 -
  • @ 後的網路位址同樣拆頭身尾檢查格式,必須至少有一個 . ,並且最後一個 . 後面接的必須是 2 或 4 個英文字 (如 .tw 或 .info)

我要留言

關於這裡

這個部落格分享了哇寶在電子商務領域的技術及資訊,希望能讓更多人一起為台灣的網路產業加油。