高效正确的email正则表达式

高效正确的email正则表达式

String check = "(//w+([-+.]//w+)*@//w+([-.]//w+)*//.//w+([-.]//w+)*)";

下面是使用方法.

static public String htmlEmail(String inputString) {
       String htmlStr = inputString; // 含html标签的字符串
       String textStr = "";
       String check = "(//w+([-+.]//w+)*@//w+([-.]//w+)*//.//w+([-.]//w+)*)";

       Pattern p = Pattern.compile(check);
       Matcher m = p.matcher(htmlStr);
       String email = "";
       while (m.find()) {

           email = email + m.group() + "/r/n";

       }
       System.out.println(email);
       return email;
   }

   static void writeFile(String str) {
       try {
           // String a = "faint";
           File file = new File("g:/test.txt");
           FileWriter writer = new FileWriter(file, true);
           writer.write(str);
           writer.flush();
           writer.close();

       } catch (Exception e) {
           e.printStackTrace();
       }

网上那个误人子弟的email正则表示为:
String check = "^([a-z0-9A-Z]+[-//.]?)+[a-z0-9A-Z]@([a-z0-9A-Z]+(-[a-z0-9A-Z]+)?//.)+[a-zA-Z]{2,}$";

上面这个错误的一不能处理下划线,二,有时还老花费很长时间..

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值