java - 如何在Java中只修剪空白而不是\ n
问题描述
我有一个字符串
String str = " hello world\n "
当我调用 str.trim() 时,它返回
"hello world"
但是,我需要字符串看起来像
"hello world\n"
我怎么能只删除字符串中的前导和尾随空格?
解决方案
尝试使用它,但将 Character.isWhitespace 替换为您自己的应作为空白跟踪的实现
public static String trim(String s) {
return ltrim(rtrim(s));
}
public static Boolean isWhitespace(char c) {
return Character.isWhitespace(c);
}
public static String ltrim(String s) {
int i = 0;
while (i < s.length() && isWhitespace(s.charAt(i))) {
i++;
}
return s.substring(i);
}
public static String rtrim(String s) {
int i = s.length()-1;
while (i >= 0 && isWhitespace(s.charAt(i))) {
i--;
}
return s.substring(0,i+1);
}
推荐阅读
- javascript - 如何将输入字段值限制为某个数字
- api - 如何使用 shutterstock API 以简单的方式搜索和获取照片
- javascript - 获取顶点折线图的正确尺寸
- python - 如何在opencv(python)中制作颜色梯度加权距离图像
- c# - 用 C# 构建康威人生游戏
- sql - SQL Server:使用批量导出实用程序将数据导出到 csv 文件时删除换行符
- maven - Maven 中的版本不适用于名称中带有特殊字符的项目,例如“_”
- java - Thymeleaf - 将变量传递给控制器
- c - c语言中的变长数组替代
- javascript - 使用动态扩展类表达式创建新元素