`
zhuqiang1002
  • 浏览: 11619 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

正则表达式匹配 字符串

 
阅读更多

正则表达式匹配字符串:

假使,有几个需要验证的字符串用 "," 连接在一起[形如:"Farmer1,1FARMER234"],想用正则表达式来匹配每一个字符串。

   private static String sourceStr = "FARMER1,1FARMER234";
   private static String key = "FARMER";
   private static String reg = "(.*\\b)?";
   String regex = "";
   key = key.toUpperCase();
   for (int i = 0; i < key.length(); i++)
   {
       regex += reg.replace("", String.valueOf(key.charAt(i)));
   }
   regex = "^" + reg + key + ".*$";
   System.out.println(regex + "-" + Pattern.compile(regex).matcher(sourceStr).matches());

上面的代码 打印出来的应该是:

^(.*\b)?FARMER.*$ - true

这种正则表达式 可以用在联系人搜索上。

假如,联系人搜索需要支持名字、号码、全拼、简拼多种支持,

可以先把几种的内容连接到一起,如:"小明,13576676795,XM,XIAOMING"

用xm或135都应该是能匹配到小明这个联系人的。

匹配后缀名:

    public static String getSuffix(String fileName)
    {
        
        Pattern p = Pattern.compile("\\.\\w+");
        Matcher m = p.matcher(fileName);
        String suffix = null;
        // 使用find逐个查找
        while (m.find())
        {
            suffix = m.group();
        }
        return suffix;
    }
    
    public static boolean isPicture(String fileName)
    {
        String suffix = getSuffix(fileName).toLowerCase();
        if (suffix.contains(".png") || suffix.contains(".jpg")  || suffix.contains(".jpeg") || suffix.contains(".gif") || suffix.contains(".bmp"))
        {
            return true;
        }
        return false;
    }
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics