Java方法:String.trim()在字符串的开头和结尾处修剪空白(空格,换行等)。
如何只修剪字符串开头的空格?
你可以用这个:
myString = myString.replaceAll("^\\s+", "")
如果您只想删除特定的空格(例如,只有空格),您可以将\\s
替换为特定字符(例如:"^ +"
仅用于空格)或字符类(例如:"^[ \\t]+"
用于空格和制表符)。
编辑根据@ Pshemo的评论,您可以使用replaceFirst
而不是replaceAll
。
试试这个
修剪开始
myString.replaceAll("^\\s+", "");
并修剪尾随
myString.replaceAll("\\s+$", "");
如果你想提供自己的实现,那么你可以使用这样的方法 -
package com.kvvssut.misc;
public class TrimAtFirst {
public static void main(String[] args) {
System.out.println(trimAtFirst(" \n \r \t You need to trim only before spaces! "));
}
private static String trimAtFirst(String string) {
int start = 0;
int len = string.length();
for (; start < len; start++) {
char ch = string.charAt(start);
if (ch != ' ') {
if (!(ch == '\n' || ch == '\t' || ch == '\r')) { // include others- I am not sure if more. Also, you can customize based on your needs!
break;
}
}
}
return string.substring(start, len);
}
}
输出 - “你只需要在空格之前修剪!”
删除前导空格:
str = str.replaceFirst("\\s+","");