android开发中使用pinyin4android转换汉字为pinying

public class Chinese2SpellUtils {
	
	 /**
     * 使用pinyin4android.jar将汉字转换为拼音
     * https://code.google.com/p/pinyin4android/downloads/detail?name=pinyin4android1.0.jar&can=2&q=
     * @param chineseStr
     * @return
     */
    public static String chineneToSpell(Context context,String chineseStr) {
        if (isChinese(chineseStr)) {
            String pinying = PinyinUtil.toPinyin(context,chineseStr);
            return pinying.toUpperCase();
        }
        return chineseStr;
    }

    /**
     * 判断字符串中是否包含有中文
     * 
     * @param str
     * @return
     */
    public static boolean isChinese(String str) {
        String regex = "[\\u4e00-\\u9fa5]";
        Pattern pattern = Pattern.compile(regex);
        Matcher matcher = pattern.matcher(str);
        return matcher.find();
    }

    /**
     * 判断是否是a-z
     * 
     * @param str
     * @return
     */
    public  static boolean isA2Z(String str) {
        String regex = "[A-Za-z]";
        Pattern pattern = Pattern.compile(regex);
        Matcher matcher = pattern.matcher(str);
        return matcher.find();
    }

    //获得汉语拼音首字母  
    public static String getAlpha(String spellStr) {    
        if (spellStr == null) {    
            return "#";    
        }    
    
        if (spellStr.trim().length() == 0) {    
            return "#";    
        }    
    
        char c = spellStr.trim().substring(0, 1).charAt(0);    
        // 正则表达式,判断首字母是否是英文字母    
        Pattern pattern = Pattern.compile("^[A-Za-z]{1}");    
        if (pattern.matcher(c + "").matches()) {    
            return (c + "").toUpperCase();    
        } else {    
            return "#";    
        }    
    }    

}

 

你可能感兴趣的:(Android开发)