对邮箱数据最简单判断,数据组成部分包含字母、数字、句点'.'、连字符'-'和下划线'_'以及’@',对数据进行判断,如何实现?
多谢

解决方案 »

  1.   

    不知道这个正则能否都检测出来  LZ可以测试下
    with t1 as
    (
         select '@123.com' c1 from dual
         union all
         select '[email protected]' c1 from dual
         union all
         select '[email protected]' c1 from dual
         union all
         select '[email protected]' c1 from dual
         union all
         select '[email protected]' c1 from dual
    )select *
    from t1
    where regexp_like(c1,'^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$')       c1
    -------------------------
    1 [email protected]
    2 [email protected]
    3 [email protected]
      

  2.   


    测试了下,对于连字符'-'好像无法检测出来
    还有能否帮忙解释下^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$
    菜鸟啊 求大虾指导……