码迷,mamicode.com
首页 > 其他好文 > 详细

有意思的String字符工具类

时间:2014-06-28 14:37:13      阅读:154      评论:0      收藏:0      [点我收藏+]

标签:android   style   blog   java   color   get   

 

  对String的操作是Java攻城师必备的,一个优秀的攻城师是懒惰,他会把自己的一些常见的代码写成可提供拓展和复用的工具类或者工具库,这些是这些优秀工程师的法宝。

  我就先从String这个基本操作开始吧,Android里有个TextUtils的类,没事点开也看看。

 

  1 public class StringUtils {
  2     
  3     
  4     private static final String regEx_script = "<script[^>]*?>[\\s\\S]*?<\\/script>"; // 定义script的正则表达式
  5     private static final String regEx_style = "<style[^>]*?>[\\s\\S]*?<\\/style>"; // 定义style的正则表达式
  6     private static final String regEx_html = "<[^>]+>"; // 定义HTML标签的正则表达式
  7     private static final String regEx_space = "\\s*|\t|\r|\n";//定义空格回车换行符
  8     
  9     /**
 10      * @param htmlStr
 11      * @return
 12      *  删除Html标签
 13      */
 14     public static String delHTMLTag(String htmlStr) {
 15         Pattern p_script = Pattern.compile(regEx_script, Pattern.CASE_INSENSITIVE);
 16         Matcher m_script = p_script.matcher(htmlStr);
 17         htmlStr = m_script.replaceAll(""); // 过滤script标签
 18 
 19         Pattern p_style = Pattern.compile(regEx_style, Pattern.CASE_INSENSITIVE);
 20         Matcher m_style = p_style.matcher(htmlStr);
 21         htmlStr = m_style.replaceAll(""); // 过滤style标签
 22 
 23         Pattern p_html = Pattern.compile(regEx_html, Pattern.CASE_INSENSITIVE);
 24         Matcher m_html = p_html.matcher(htmlStr);
 25         htmlStr = m_html.replaceAll(""); // 过滤html标签
 26 
 27         Pattern p_space = Pattern.compile(regEx_space, Pattern.CASE_INSENSITIVE);
 28         Matcher m_space = p_space.matcher(htmlStr);
 29         htmlStr = m_space.replaceAll(""); // 过滤空格回车标签
 30         return htmlStr.trim(); // 返回文本字符串
 31     }
 32     
 33     
 34     public static String join(String[] strs, String split) {
 35         if (strs == null || strs.length == 0) {
 36             return "";
 37         }
 38         StringBuffer sb = new StringBuffer();
 39         sb.append(strs[0]);
 40         for (int i = 1; i < strs.length; i++) {
 41             if (split != null) {
 42                 sb.append(split);
 43             }
 44 
 45             sb.append(strs[i]);
 46         }
 47 
 48         return sb.toString();
 49     }
 50 
 51     public static String validString(String str) {
 52         return TextUtils.isEmpty(str) ? "" : str;
 53     }
 54 
 55     public static String ToDBC(String input) {
 56         if (null == input) {
 57             return "";
 58         }
 59 
 60         char[] c = input.toCharArray();
 61         for (int i = 0; i < c.length; i++) {
 62             if (c[i] == 12288) {
 63                 c[i] = (char) 32;
 64                 continue;
 65             }
 66             if (c[i] > 65280 && c[i] < 65375)
 67                 c[i] = (char) (c[i] - 65248);
 68         }
 69         return new String(c);
 70     }
 71 
 72     
 73     /**
 74      * 验证输入的邮箱格式是否符合
 75      * 
 76      * @param email
 77      * @return 是否合法
 78      */
 79     public static boolean isEmail(String email) {
 80         boolean tag = true;
 81         final String pattern1 = "^([a-z0-9A-Z]+[-|\\.]?)+[a-z0-9A-Z]@([a-z0-9A-Z]+(-[a-z0-9A-Z]+)?\\.)+[a-zA-Z]{2,}$";
 82         final Pattern pattern = Pattern.compile(pattern1);
 83         final Matcher mat = pattern.matcher(email);
 84         if (!mat.find()) {
 85             tag = false;
 86         }
 87         return tag;
 88     }
 89     /**
 90      * str -- >yyyy-MM-dd
 91      * 
 92      * @param strDate
 93      * @return
 94      */
 95     @SuppressLint("SimpleDateFormat")
 96     public static Date toDate(String strDate) {
 97         Date date = null;
 98         try {
 99             SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm");
100             date = sdf.parse(strDate);
101         } catch (ParseException e) {
102             System.out.println(e.getMessage());
103         }
104         return date;
105 
106     }
107 }

 

有意思的String字符工具类,布布扣,bubuko.com

有意思的String字符工具类

标签:android   style   blog   java   color   get   

原文地址:http://www.cnblogs.com/Cyning/p/3798335.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!