Java 如何删除字符串开头的空白?
在Java中,如何删除字符串开头的空格而不删除末尾的空格 如果该值为:Java 如何删除字符串开头的空白?,java,whitespace,trim,Java,Whitespace,Trim,在Java中,如何删除字符串开头的空格而不删除末尾的空格 如果该值为: String temp = " hi " 那么我如何才能只删除前导的空白,使其看起来像这样: String temp = "hi " 当前的实现是循环执行,检查第一个字符并创建一个子字符串,直到达到第一个非空白值 谢谢 您可以使用: temp = temp.replaceFirst("^\\s*", "") 您可以使用Commons-lang-StringUtils方法 如果传递null,它将自动修剪
String temp = " hi "
那么我如何才能只删除前导的空白,使其看起来像这样:
String temp = "hi "
当前的实现是循环执行,检查第一个字符并创建一个子字符串,直到达到第一个非空白值
谢谢 您可以使用:
temp = temp.replaceFirst("^\\s*", "")
您可以使用Commons-lang-StringUtils方法 如果传递null,它将自动修剪空格
StringUtils.stripStart(temp, null);
可能接近建议的Commons lang StringUtils.stripStart()方法的实现:
公共静态字符串(字符串输入){
如果(输入==null)返回输入;
对于(int i=0;i
明目张胆地抄袭自:
…并使用@Reimus
的答案进行了修改:
text = text.replaceFirst("^\\s+", "");
我不确定哪种方法最有效;fwiw,我使用了《雷姆斯》的原著。从《代码》JDK11开始,您可以使用:
这对已经没有空格的字符串不起作用。它应该是
temp.replaceFirst(“^\\s*”,”)
以便^
匹配字符串的开头。OP还需要确保字符串以空格字符开头。只有在使用字符串时才需要^
。replaceAll
。虽然它在这里可以正常工作,但是String.replaceFirst
text = text.replaceAll("^\\s+", "");
text = text.replaceFirst("^\\s+", "");
String result = temp.stripLeading();