【笔记】分离字符串中的数字、字母和汉字
package com.xtl.test;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
/**
 * 字符串中分离数字和字母 
 * @author xiatianlong
 *
 * @date 2016年4月28日 上午9:38:24
 */
public class Test {
    public static void main(String[] args) {
        StringBuffer characters = new StringBuffer();
        StringBuffer letter = new StringBuffer();
        StringBuffer number = new StringBuffer();
        
        String str  = "中国abc123";
        char[] strArr = str.toCharArray();
        for (char string : strArr) {
            // 判断是否为字母
            if ((string+"").matches("[a-z]") || (string+"").matches("[A-Z]")){
                letter.append(string+"  ");
            }
            // 判断是否为数字
            if ((string+"").matches("[0-9]")){
                number.append(string+"  ");
            }
            // 判断是否为汉字
            if (isChineseChar(string+"")){
                characters.append(string+"  ");
            }
        }
        System.out.println(characters.toString());
        System.out.println(letter.toString());
        System.out.println(number.toString());
    }
    
    /**
     * 判断是否为汉字
     * @param str
     *             字符串
     * @return
     */
    public static boolean isChineseChar(String str){
           boolean temp = false;
           Pattern p=Pattern.compile("[\u4e00-\u9fa5]"); 
           Matcher m=p.matcher(str); 
           if(m.find()){ 
               temp =  true;
           }
           return temp;
       }
}

 
                
            
         
         浙公网安备 33010602011771号
浙公网安备 33010602011771号