StringUtils.java
4.58 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
package com.share.mvpsdk.utils;
import android.text.TextUtils;
import android.util.Base64;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
/**
* Created by Horrarndoo on 2017/4/5.
* 字符串工具类
*/
public class StringUtils {
/**
* 判断字符串是否有值,如果为null或者是空字符串或者只有空格或者为"null"字符串,则返回true,否则则返回false
*/
public static boolean isEmpty(String value) {
return !(value != null && !"".equalsIgnoreCase(value.trim())
&& !"null".equalsIgnoreCase(value.trim()));
}
/**
* 判断字符串是否是邮箱
*
* @param email email
* @return 字符串是否是邮箱
*/
public static boolean isEmail(String email) {
String str = "^([a-zA-Z0-9_\\-\\.]+)@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.)|(" +
"([a-zA-Z0-9\\-]+\\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\\]?)$";
Pattern p = Pattern.compile(str);
Matcher m = p.matcher(email);
return m.matches();
}
/**
* 判断手机号字符串是否合法
*
* @param phoneNumber 手机号字符串
* @return 手机号字符串是否合法
*/
public static boolean isPhoneNumberValid(String phoneNumber) {
boolean isValid = false;
String expression = "^1[3|4|5|7|8]\\d{9}$";
CharSequence inputStr = phoneNumber;
Pattern pattern = Pattern.compile(expression);
Matcher matcher = pattern.matcher(inputStr);
if (matcher.matches()) {
isValid = true;
}
return isValid;
}
/**
* 判断手机号字符串是否合法
*
* @param areaCode 区号
* @param phoneNumber 手机号字符串
* @return 手机号字符串是否合法
*/
public static boolean isPhoneNumberValid(String areaCode, String phoneNumber) {
if (TextUtils.isEmpty(phoneNumber)) {
return false;
}
if (phoneNumber.length() < 5) {
return false;
}
if (TextUtils.equals(areaCode, "+86") || TextUtils.equals(areaCode, "86")) {
return isPhoneNumberValid(phoneNumber);
}
boolean isValid = false;
String expression = "^[0-9]*$";
CharSequence inputStr = phoneNumber;
Pattern pattern = Pattern.compile(expression);
Matcher matcher = pattern.matcher(inputStr);
if (matcher.matches()) {
isValid = true;
}
return isValid;
}
/**
* 判断字符串是否是手机号格式
*
* @param areaCode 区号
* @param phoneNumber 手机号字符串
* @return 字符串是否是手机号格式
*/
public static boolean isPhoneFormat(String areaCode, String phoneNumber) {
if (TextUtils.isEmpty(phoneNumber)) {
return false;
}
if (phoneNumber.length() < 7) {
return false;
}
boolean isValid = false;
String expression = "^[0-9]*$";
CharSequence inputStr = phoneNumber;
Pattern pattern = Pattern.compile(expression);
Matcher matcher = pattern.matcher(inputStr);
if (matcher.matches()) {
isValid = true;
}
return isValid;
}
/**
* 判断字符串是否为纯数字
*
* @param str 字符串
* @return 是否纯数字
*/
public static boolean isNumber(String str) {
for (int i = 0; i < str.length(); i++) {
if (!Character.isDigit(str.charAt(i))) {
return false;
}
}
return true;
}
private final static String appSecret = "f71467cfd98d";
public static String getSign(){
String sign = "";
try {
String clientid = MD5(System.currentTimeMillis() + new int[(int) (Math.random() * 100)].toString());
sign = "Basic " + Base64.encodeToString((clientid + ":" + MD5(clientid + appSecret)).getBytes("ASCII"), Base64.NO_WRAP);
} catch (Exception err) {
err.printStackTrace();
}
return sign;
}
public static String MD5(String str) {
try {
java.security.MessageDigest md = java.security.MessageDigest.getInstance("MD5");
byte[] array = md.digest(str.getBytes("utf-8"));
StringBuffer sb = new StringBuffer();
for (int i = 0; i < array.length; ++i) {
sb.append(Integer.toHexString((array[i] & 0xFF) | 0x100).substring(1, 3));
}
return sb.toString().toUpperCase();
} catch (Exception e) {
}
return "";
}
}