StringUtils 更新一些标为弃用的方法

This commit is contained in:
thinkgem
2025-10-10 19:25:41 +08:00
parent 1199d947ff
commit d475e154a6

View File

@@ -7,6 +7,8 @@ package com.jeesite.common.lang;
import com.jeesite.common.codec.EncodeUtils;
import com.jeesite.common.collect.ListUtils;
import org.apache.commons.lang3.Strings;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import java.io.UnsupportedEncodingException;
import java.nio.charset.StandardCharsets;
@@ -18,10 +20,12 @@ import java.util.regex.Pattern;
/**
* 字符串工具类, 继承org.apache.commons.lang3.StringUtils类
* @author ThinkGem
* @version 2018-1-6
* @version 2025-10-10
*/
public class StringUtils extends org.apache.commons.lang3.StringUtils {
private static final Logger logger = LoggerFactory.getLogger(StringUtils.class);
public static final String DOT = ".";
public static final String COMMA = ",";
public static final String COLON = ":";
@@ -114,6 +118,13 @@ public class StringUtils extends org.apache.commons.lang3.StringUtils {
return Strings.CS.equals(cs1, cs2);
}
/**
* 比较字符串,是否相等,只要有一个匹配就成立
*/
public static boolean equalsAny(final CharSequence string, final CharSequence... searchStrings) {
return Strings.CS.equalsAny(string, searchStrings);
}
/**
* 比较字符串,是否相等(忽略大小写)
*/
@@ -128,6 +139,20 @@ public class StringUtils extends org.apache.commons.lang3.StringUtils {
return Strings.CS.contains(seq, searchSeq);
}
/**
* 比较字符串,是否在字符串中包含,只要有一个匹配就成立
*/
public static boolean containsAny(final CharSequence cs, final CharSequence... searchCharSequences) {
return Strings.CS.containsAny(cs, searchCharSequences);
}
/**
* 比较字符串,是否在字符串中包含(忽略大小写)
*/
public static boolean containsIgnoreCase(final CharSequence str, final CharSequence searchStr) {
return Strings.CI.contains(str, searchStr);
}
/**
* 比较字符串,前缀是否匹配
*/
@@ -177,6 +202,13 @@ public class StringUtils extends org.apache.commons.lang3.StringUtils {
return Strings.CS.replace(text, searchString, replacement);
}
/**
* 替换字符串(忽略大小写)
*/
public static String replaceIgnoreCase(final String text, final String searchString, final String replacement) {
return Strings.CI.replace(text, searchString, replacement);
}
/**
* 去除左右空格(包含中文空格)
*/
@@ -241,13 +273,13 @@ public class StringUtils extends org.apache.commons.lang3.StringUtils {
}
return sb.toString();
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
logger.error(e.getMessage(), e);
}
return EMPTY;
}
// 缩略字符串替换Html正则表达式预编译
private static Pattern p1 = Pattern.compile("<([a-zA-Z]+)[^<>]*>");
private static final Pattern p1 = Pattern.compile("<([a-zA-Z]+)[^<>]*>");
/**
* 缩略字符串适应于与HTML标签的
@@ -280,7 +312,7 @@ public class StringUtils extends org.apache.commons.lang3.StringUtils {
n += String.valueOf(temp).getBytes("GBK").length;
}
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
logger.error(e.getMessage(), e);
}
if (n <= length - 3) {
result.append(temp);
@@ -329,8 +361,7 @@ public class StringUtils extends org.apache.commons.lang3.StringUtils {
/**
* 转换为驼峰命名法
* @return
* camelCase("hello_world") == "helloWorld"
* @return camelCase("hello_world") == "helloWorld"
* capCamelCase("hello_world") == "HelloWorld"
* uncamelCase("helloWorld") = "hello_world"
*/
@@ -359,8 +390,8 @@ public class StringUtils extends org.apache.commons.lang3.StringUtils {
/**
* 转换为驼峰命名法(首字母大写)
* @return
* camelCase("hello_world") == "helloWorld"
*
* @return camelCase("hello_world") == "helloWorld"
* capCamelCase("hello_world") == "HelloWorld"
* uncamelCase("helloWorld") = "hello_world"
*/
@@ -370,8 +401,8 @@ public class StringUtils extends org.apache.commons.lang3.StringUtils {
/**
* 取消驼峰命名发
* @return
* camelCase("hello_world") == "helloWorld"
*
* @return camelCase("hello_world") == "helloWorld"
* capCamelCase("hello_world") == "HelloWorld"
* uncamelCase("helloWorld") = "hello_world"
*/
@@ -440,6 +471,7 @@ public class StringUtils extends org.apache.commons.lang3.StringUtils {
/**
* 获取随机字符串
*
* @param count 长度
* @param codeSeq 因子
*/