您的位置:首页 > 移动开发 > Android开发

Android常用的工具方法(2)

2016-08-18 11:46 351 查看
1.判断是否为浮点数,小数点2位

/**
* 判断是否为浮点数,小数点2位
* @param:mail
*            邮箱
* @return
*/
public static boolean validateFloatNum(String str) {
Pattern pattern = Pattern.compile("^(?!0+(?:\\.0+)?$)(?:[1-9]\\d*|0)(?:\\.\\d{1,2})?$");
Matcher m = pattern.matcher(str);
return m.matches();
}


2.邮箱验证

/**
* 邮箱验证
*
* @param mail
*            邮箱
* @return
*/
public static boolean validateEmail(String mail) {
Pattern pattern = Pattern.compile("\\w+([-+.]\\w+)*@\\w+([-.]\\w+)*\\.\\w+([-.]\\w+)*");
Matcher m = pattern.matcher(mail);
return m.matches();
}


3.验证输入的身份证号是否符合格式要求

/**
* 验证输入的身份证号是否符合格式要求
*
* @param IDNum
*            身份证号
* @return 符合国家的格式要求为 true;otherwise,false;
*/
public static boolean validateIDcard(String IDNum) {
String id_regEx1 = "^([1-9]\\d{7}((0\\d)|(1[0-2]))(([0|1|2]\\d)|(3[0-1]))\\d{3})|([1-9]\\d{5}[1-9]\\d{3}((0\\d)|(1[0-2]))(([0|1|2]\\d)|(3[0-1]))\\d{3}[0-9Xx])$";
Pattern pattern = Pattern.compile(id_regEx1);
Matcher m = pattern.matcher(IDNum);
return m.matches();
}


4.判定输入的是否是汉字

/**
* 判定输入的是否是汉字
*
* @param c
*            被校验的字符
* @return true代表是汉字
*/
public static boolean isChinese(char c) {
Character.UnicodeBlock ub = Character.UnicodeBlock.of(c);
if (ub == Character.UnicodeBlock.CJK_UNIFIED_IDEOGRAPHS
|| ub == Character.UnicodeBlock.CJK_COMPATIBILITY_IDEOGRAPHS
|| ub == Character.UnicodeBlock.CJK_UNIFIED_IDEOGRAPHS_EXTENSION_A
|| ub == Character.UnicodeBlock.GENERAL_PUNCTUATION
|| ub == Character.UnicodeBlock.CJK_SYMBOLS_AND_PUNCTUATION
|| ub == Character.UnicodeBlock.HALFWIDTH_AND_FULLWIDTH_FORMS) {
return true;
}
return false;
}


5.检测是否有emoji表情

/* 检测是否有emoji表情
*
* @param source
* @return
*/
public static boolean containsEmoji(String source) {
int len = source.length();
for (int i = 0; i < len; i++) {
char codePoint = source.charAt(i);
if (!isEmojiCharacter(codePoint)) { //如果不能匹配,则该字符是Emoji表情
return true;
}
}        return false;
}
/**
* 判断是否是Emoji
*
* @param codePoint 比较的单个字符
* @return
*/
private static boolean isEmojiCharacter(char codePoint) {
return (codePoint == 0x0) || (codePoint == 0x9) || (codePoint == 0xA) ||
(codePoint == 0xD) || ((codePoint >= 0x20) && (codePoint <= 0xD7FF)) ||
((codePoint >= 0xE000) && (codePoint <= 0xFFFD)) || ((codePoint >= 0x10000)
&& (codePoint <= 0x10FFFF));
}


6.保留小数点后两位

/**
* 保留小数点后两位
*/
public static String formatNumber2(double d) {
try {
DecimalFormat df = new DecimalFormat("0.00");
return df.format(d);
} catch (Exception e) {
}
return "";
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息