package thyyxxk.webserver.utils; import lombok.extern.slf4j.Slf4j; import java.util.ArrayList; import java.util.List; import java.util.regex.Matcher; import java.util.regex.Pattern; /** * @author dj */ @Slf4j public class StringUtil { public static boolean isBlank(String str) { return null == str || "".equals(str.trim()); } public static boolean notBlank(String str) { return null != str && !"".equals(str.trim()); } public static boolean validValue(String str) { return notBlank(str) && !"-".equals(str.trim()); } public static boolean equalsIgnoreNull(String a, String b) { if (null == a) { a = ""; } if (null == b) { b = ""; } return a.equals(b); } public static boolean invalidValue(String str) { return isBlank(str) || "-".equals(str.trim()); } public static String[] triageDeptString2Array(String deptCodes) { return null == deptCodes ? new String[]{} : deptCodes.substring(1, deptCodes.length() - 1) .replaceAll("\"", "") .split(","); } /** * 把原始字符串分割成指定长度的字符串列表 * * @param inputString 原始字符串 * @param length 指定长度 * @return 。。 */ public static List getStringList(String inputString, int length) { int size = inputString.length() / length; if (inputString.length() % length != 0) { size += 1; } return getStrList(inputString, length, size); } /** * 把原始字符串分割成指定长度的字符串列表 * * @param inputString 原始字符串 * @param length 指定长度 * @param size 指定列表大小 * @return .. */ public static List getStrList(String inputString, int length, int size) { List list = new ArrayList<>(); for (int i = 0; i < size; i++) { String childStr = substring(inputString, i * length, (i + 1) * length); list.add(childStr); } return list; } /** * @param str 需要判断的字符串 * @return 返回 到底要不要 toUpperCase */ public static String isContainChinese(String str) { if (isBlank(str)) { return "%"; } Pattern p = Pattern.compile("[\u4E00-\u9FA5|\\!|\\,|\\。|\\(|\\)|\\《|\\》|\\“|\\”|\\?|\\:|\\;|\\【|\\】]"); Matcher m = p.matcher(str); if (m.find()) { return "%" + str + "%"; } return "%" + str.toUpperCase() + "%"; } public static String EnglishToCapital(String str) { if (isBlank(str)) { return ""; } Pattern p = Pattern.compile("[\u4E00-\u9FA5|\\!|\\,|\\。|\\(|\\)|\\《|\\》|\\“|\\”|\\?|\\:|\\;|\\【|\\】]"); Matcher m = p.matcher(str); if (m.find()) { return str; } return str.toUpperCase(); } /** * 分割字符串,如果开始位置大于字符串长度,返回空 * * @param str 原始字符串 * @param f 开始位置 * @param t 结束位置 * @return 。。 */ public static String substring(String str, int f, int t) { if (f > str.length()) { return null; } if (t > str.length()) { return str; } else { return str.substring(f, t); } } }