zoukankan      html  css  js  c++  java
  • 关于邮箱怎么验证是不是真实的企业邮箱(java汉字和英文呼唤)

    企业邮箱的域名一般都是zhangsan@公司域名,或者zhang_san@公司域名这种形式。这里我只列举zhangsan@公司域名这种形式。

    公司要我做一个企业邮箱的模糊匹配和验证,刚接到以为很难。结果网上一查,发现有类似Api。瞬间小case了。

    引入jar包:pinyin4j-2.5.0.jar

    一下代码是我自己随便写的,应该还可以优化,用了两个循环,因为我们汉子中包含了很多多音字啦。

    /**
      * 单个汉子检查
      * @param chinese
      * @return
      */
     public static boolean checkSpell(String chinese,String mailAccount) {
      boolean result = false;
      try {
       //设置转换格式
       HanyuPinyinOutputFormat defaultFormat = new HanyuPinyinOutputFormat();
       defaultFormat.setCaseType(HanyuPinyinCaseType.LOWERCASE); // 设置大小写
       defaultFormat.setToneType(HanyuPinyinToneType.WITHOUT_TONE); // 设置无声调表示
       char[] arr = chinese.toCharArray();
       for (int j = 0; j < arr.length; j++) {
        result = false;
        //调用拼音Api
        String[] pinyin = PinyinHelper.toHanyuPinyinStringArray(arr[j], defaultFormat);
        for (int i = 0; i < pinyin.length; i++) {
         //符合条件直接跳出循环
         if(mailAccount.startsWith(pinyin[i])){
          mailAccount = mailAccount.substring(mailAccount.indexOf(pinyin[i])+pinyin[i].length());
          result = true;
          break;
         }
        }
        if(result == true){
         continue;
        }
        return result;
       }
      } catch (BadHanyuPinyinOutputFormatCombination e) {
       // TODO Auto-generated catch block
       e.printStackTrace();
      }
      return result;
     }

    public static void main(String[] args) {
      boolean result = checkSpell("长兴薄", "changxingbao@shyi.com");
      System.out.println(result);
      result = checkSpell("长兴薄", "chanxingbao@shyi.com");
      System.out.println(result);
      result = checkSpell("长兴薄", "changxingba@shyi.com");
      System.out.println(result);
      result = checkSpell("长兴薄", "changxinbao@shyi.com");
      System.out.println(result);
      result = checkSpell("长兴薄", "chanxingbao@shyi.com");
     }

    版权所有,转载请注明出处。

  • 相关阅读:
    记录软件工程课程项目开发时遇到的各种小问题(django)
    用python实现逻辑回归
    利用KD树进行异常检测
    PyQt4入门学习笔记(五)
    PyQt4入门学习笔记(四)
    import matplolib 时出现"This probably means that tk wasn't installed properly."的解决方法
    IDEA上安装和使用checkstyle,findbugs,visualVM,PMD插件
    pycharm连接mysql数据库
    基于trie树做一个ac自动机
    用python实现最长公共子序列算法(找到所有最长公共子串)
  • 原文地址:https://www.cnblogs.com/hisunhyx/p/4910760.html
Copyright © 2011-2022 走看看