去除字符串中的特殊符号:
-
\n
回车(\u000a) -
\t
水平制表符(\u0009) -
\s
空格(\u0008) -
\r
换行(\u000d)
工具类
import org.apache.commons.lang3.ObjectUtils;
import org.apache.commons.lang3.StringUtils;
import java.util.ArrayList;
import java.util.List;
/**
* @author wangbo
* @date 2021/11/24
*/
public class StringUtil {
/**
* 清理字符串
*
* @param str 目标字符串
* @return 清理后的字符串
*/
public static String clearStr(String str) {
if (StringUtils.isEmpty(str)) {
return str;
}
String resultStr = str.replaceAll("\n", StringUtils.EMPTY)
.replaceAll("\t", StringUtils.EMPTY)
.replaceAll("\r", StringUtils.EMPTY);
return resultStr.trim();
}
/**
* 清理字符串列表
*
* @param strList 目标字符串列表
* @return 清理后的字符串列表
*/
public static List<String> clearStrList(List<String> strList) {
if (ObjectUtils.isEmpty(strList)) {
return strList;
}
List<String> resultStrList = new ArrayList<>();
for (String str : strList) {
resultStrList.add(clearStr(str));
}
return resultStrList;
}
}
另一个版本:
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class StringUtils {
public static String replaceBlank(String str) {
String dest = "";
if (str!=null) {
Pattern p = Pattern.compile("\\s*|\t|\r|\n");
Matcher m = p.matcher(str);
dest = m.replaceAll("");
}
return dest;
}
public static void main(String[] args) {
System.out.println(StringUtils.replaceBlank("just do it!"));
}
}