如何只修剪字符串开头的空格

问题描述 投票:1回答:4

Java方法:String.trim()在字符串的开头和结尾处修剪空白(空格,换行等)。

如何只修剪字符串开头的空格?

java string trim
4个回答
2
投票

你可以用这个:

myString = myString.replaceAll("^\\s+", "")

如果您只想删除特定的空格(例如,只有空格),您可以将\\s替换为特定字符(例如:"^ +"仅用于空格)或字符类(例如:"^[ \\t]+"用于空格和制表符)。

编辑根据@ Pshemo的评论,您可以使用replaceFirst而不是replaceAll


1
投票

试试这个

修剪开始

myString.replaceAll("^\\s+", "");

并修剪尾随

myString.replaceAll("\\s+$", "");

0
投票

如果你想提供自己的实现,那么你可以使用这样的方法 -

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);
    }

}

输出 - “你只需要在空格之前修剪!”


0
投票

删除前导空格:

str = str.replaceFirst("\\s+","");
© www.soinside.com 2019 - 2024. All rights reserved.