正则表达式检查电子邮件地址

时间:2011-04-11 10:47:04

标签: mysql regex

我想知道如何使用MySQL的REGEXP或RLIKE功能执行以下两项任务:

  

任务#1
  选择所有电子邮件地址,但仅在@之后和第一个之前返回组件。在域中。所以说我在桌子上有3封电子邮件... bob @ 123.com,bill @ 456.com,ben @ 789.com我只想让它返回123,456,789的3个结果。


  

任务#2
  当在WHERE子句中使用时,我想只匹配域的相同部分(在@之后和第一个之前。)满足特定条件的位置。为了论证,我们可以说这是123,456或789。

1 个答案:

答案 0 :(得分:2)

任务#1 - 没有办法做到这一点,MySQL只能使用REGEXPS进行比较

任务#2 -

SELECT * FROM table WHERE field REGEXP '^[^@]+@(123|456|789)\\..*$'