* 類描述:字符串工具類 類名稱:String_U
來(lái)源:程序員人生 發(fā)布時(shí)間:2014-11-22 08:41:20 閱讀次數(shù):2425次
/******************************************
* 類描寫(xiě):字符串工具類 類名稱:String_U
*
******************************************/
public class String_U {
private String_U() {
}
/**
* 檢查手機(jī)號(hào)是不是合法
*
* @param phoneNum
* @return boolean true 為手機(jī)號(hào)合法,false為手機(jī)號(hào)不合法
*/
public static boolean isMobileNum(String phoneNum) {
if (TextUtils.isEmpty(phoneNum))
return false;
Pattern p = Pattern
.compile("((+86|86)?((13[0⑼]d{8})|(15[0⑼]d{8})|(170d{8})|(18[0⑼]d{8})))");
Matcher m = p.matcher(phoneNum);
if (m.matches()) {
return true;
} else {
return false;
}
}
public static boolean isEmail(String email) {
boolean tag = true;
// final String pattern1 =
// "^[0⑼a-z][a-z0⑼._-]{1,}@[a-z0⑼-]{1,}[a-z0⑼].[a-z.]{1,}[a-z]$";
final String pattern1 = "^[w][a-z0⑼._-]{1,}@[a-z0⑼-]{1,}[a-z0⑼].[a-z.]{1,}[a-z]$";
final Pattern pattern = Pattern.compile(pattern1);
final Matcher mat = pattern.matcher(email);
if (!mat.find()) {
tag = false;
}
return tag;
}
/**
* 設(shè)置指定位置字體色彩
*
* @param color
* 16進(jìn)制色值
* @param text
* 文字
* @param start
* 設(shè)置色彩的起始位置
* @param end
* 設(shè)置色彩的結(jié)束位置
* @return mSpannableString
*/
public static SpannableString getSpecialSpannableString(String color,
String text, int start, int end) {
SpannableString mSpannableString = new SpannableString(text);
// 設(shè)置字體前風(fēng)景
mSpannableString.setSpan(
new ForegroundColorSpan(Color.parseColor(color)), start, end,
Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
return mSpannableString;
}
/**
* 驗(yàn)證密碼是不是符合規(guī)定
*
* @param password
* @return boolean true為密碼合法,false為密碼不合法
*/
public static boolean checkPassword(String password) {
if (password == null || password.length() > 16 || password.length() < 6) {
return false;
}
Pattern pattern = Pattern.compile("^[a-zA-Z0⑼]{6,16}$");
Matcher invalid = pattern.matcher(password);
return invalid.matches();
}
/**
* 字符串安全比較
*
* @param lStr
* 左邊String
* @param rStr
* 右邊String
* @return boolean true 兩字符串內(nèi)容1致,false兩字符串內(nèi)容不1致
*/
public static boolean equal(String lStr, String rStr) {
if (lStr == null) {
return lStr == rStr;
}
return lStr.equals(rStr);
}
/**
* 計(jì)算百分比
*
* @param y
* @param z
* @return
*/
public static String myPercent(int y, int z) {
String percent = null;// 接受百分比的值
float baiy = y;
float baiz = z;
float fen = baiy / baiz;
// NumberFormat nf = NumberFormat.getPercentInstance(); 注釋掉的也是1種方法
// nf.setMinimumFractionDigits( 2 ); 保存到小數(shù)點(diǎn)后幾位
DecimalFormat df1 = new DecimalFormat("##%"); // ##.00%
// 百分比格式,后面不足2位的用0補(bǔ)齊
// baifenbi=nf.format(fen);
percent = df1.format(fen);
return percent;
}
/***
* 分割指定文本,并在指定文本前追加實(shí)心圓圈或序號(hào)
*
* @param text
* 指定文本
* @param separator
* 分隔符
* @param circle
* 條目符號(hào)(例:“?”)
* @param isAppendNum
* 是不是添加序號(hào)
* @return
*/
public static String separatorString(String text, String separator,
String circle, boolean isAppendNum) {
if (TextUtils.isEmpty(text)) {
return "";
}
StringBuffer strBuffer = new StringBuffer();
if (TextUtils.isEmpty(separator)) {
// 沒(méi)有分隔符
strBuffer.append(circle);
strBuffer.append(text);
} else {
String[] strArray = text.split(separator);
for (int i = 0; i < strArray.length; i++) {
if (!TextUtils.isEmpty(circle)) {
// 添加條目符號(hào)
strBuffer.append(circle);
}
if (isAppendNum) {
// 添加序號(hào)
strBuffer.append((i - 1) + "、");
}
strBuffer.append(strArray[i]);
if (i != strArray.length - 1) {
// 添加換行
strBuffer.append("
");
}
}
}
return strBuffer.toString();
}
}
生活不易,碼農(nóng)辛苦
如果您覺(jué)得本網(wǎng)站對(duì)您的學(xué)習(xí)有所幫助,可以手機(jī)掃描二維碼進(jìn)行捐贈(zèng)