123 lines
3.3 KiB
Java
123 lines
3.3 KiB
Java
package com.ruoyi.business.util;
|
||
|
||
import java.io.PrintWriter;
|
||
import java.io.StringWriter;
|
||
import java.util.HashMap;
|
||
import java.util.Map;
|
||
import java.util.regex.Matcher;
|
||
import java.util.regex.Pattern;
|
||
|
||
public class StringKit {
|
||
|
||
public StringKit() {
|
||
}
|
||
|
||
public static Boolean isEmpty(Object argObject) {
|
||
Boolean tbool = false;
|
||
String tString = toString(argObject);
|
||
if (tString.equals("")) {
|
||
tbool = true;
|
||
}
|
||
|
||
return tbool;
|
||
}
|
||
|
||
public static String toString(Object argObject) {
|
||
String tmpstr = "";
|
||
try {
|
||
if (argObject != null) {
|
||
tmpstr = argObject.toString();
|
||
if ("null".equals(tmpstr) || "underfind".equals(tmpstr) || "undefined".equals(tmpstr) || "{}".equals(tmpstr)) {
|
||
tmpstr = "";
|
||
}
|
||
}
|
||
} catch (Exception var3) {
|
||
}
|
||
|
||
return tmpstr;
|
||
}
|
||
|
||
|
||
public static boolean isNumeric(String str) {
|
||
Pattern pattern = Pattern.compile("[0-9]*");
|
||
return pattern.matcher(str).matches();
|
||
}
|
||
|
||
public static boolean isEng(String str) {
|
||
Pattern pattern = Pattern.compile("[a-zA-Z]");
|
||
return pattern.matcher(str).matches();
|
||
}
|
||
|
||
|
||
public static String getTrace(Throwable t) {
|
||
|
||
StringWriter stringWriter = new StringWriter();
|
||
PrintWriter writer = new PrintWriter(stringWriter);
|
||
t.printStackTrace(writer);
|
||
StringBuffer buffer = stringWriter.getBuffer();
|
||
return buffer.toString();
|
||
}
|
||
|
||
/**
|
||
* 空时 返回NA(有的厂家字段必填,我们没有,先用NA补充)
|
||
*
|
||
* @return
|
||
*/
|
||
public static String responseNa(Object object) {
|
||
if (isEmpty(object)) {
|
||
return "NA";
|
||
}
|
||
return String.valueOf(object);
|
||
}
|
||
|
||
/**
|
||
* 检查某个字符串出现几次
|
||
*
|
||
* @return
|
||
*/
|
||
public static Integer getStrCount(String str, String indexStr) {
|
||
|
||
//java中判断一个字符出现的次数
|
||
//在下面字符串中查找有几个啊
|
||
// String str = "啊!我爱你中国!啊,我爱你故乡";
|
||
//存放每个字符的数组
|
||
String[] strs = new String[str.length()];
|
||
//计数该字符出现了多少次
|
||
int count = 0;
|
||
//先把字符串转换成数组
|
||
for (int i = 0; i < strs.length; i++) {
|
||
strs[i] = str.substring(i, i + 1);
|
||
}
|
||
//挨个字符进行查找,查找到之后count++
|
||
for (int i = 0; i < strs.length; i++) {
|
||
if (strs[i].equals(indexStr)) {
|
||
count++;
|
||
}
|
||
}
|
||
// System.out.println("一共有"+count+"个啊");
|
||
return count;
|
||
|
||
}
|
||
|
||
public static Map<String, String> parse(String input) {
|
||
Map<String, String> result = new HashMap<>();
|
||
|
||
// 定义正则表达式
|
||
String regex = "(\\w+)=\"([^\"]*)\"";
|
||
Pattern pattern = Pattern.compile(regex);
|
||
Matcher matcher = pattern.matcher(input);
|
||
|
||
// 使用正则表达式进行匹配
|
||
while (matcher.find()) {
|
||
// 提取键值对
|
||
String key = matcher.group(1);
|
||
String value = matcher.group(2);
|
||
result.put(key, value);
|
||
}
|
||
|
||
return result;
|
||
}
|
||
|
||
|
||
}
|