【发布时间】:2022-02-06 09:24:52
【问题描述】:
我一直试图弄清楚为什么这个 Java 代码不会删除任何前导空格到我的实际字符串,我一直在尝试使用 stripLeading() 方法和 trim();方法,以及其他各种具有相同功能但仍未获得良好结果的方法。代码:
public static String message(String logLine) {
logLine = (String) logLine.subSequence(logLine.indexOf(" ") + 1, logLine.length());
return logLine;
}
public static void main(String[] args) {
System.out.println(message("[WARNING]: \tTimezone not set \r\n"));
}
结果是我想要的,只是“未设置时区”这句话,但是我希望这个程序完全忽略前导空格,由于某种原因它不能。感谢您的帮助。
【问题讨论】:
-
如果前面有文字,则不是前导空格。
-
在几个字符串上尝试
.indexOf(" "),也许是" x"、"x y"、"x ",然后想想结果。 -
可能是
string.substring(string.indexOf(" ")).trim()(或... .stripLeading()[Java 11+]) -
logLine = logLine.split("\\s+",2)[1].trim();
标签: java string removing-whitespace