How to trim the whitespace from a string? [duplicate]

Вы можете использовать gcc -Q --help= для получения списка текущих значений параметров данного . Таким образом:

$ gcc -Q --help=target | grep march
  -march=                           x86-64
$ gcc -m32 -Q --help=target | grep march
  -march=                           i686
$ i686-w64-mingw32-gcc -Q --help=target | grep march
  -march=                           pentiumpro

Редактировать: На самом деле, эта опция не так полезна, как кажется, потому что специфичные для цели значения по умолчанию не отражены в выходных данных .

26
задан Lii 2 July 2018 в 16:02
поделиться

3 ответа

String.trim() очень стар, по крайней мере, до Java 1.3. У тебя этого нет?

14
ответ дан 28 November 2019 в 06:38
поделиться

В JDK / 11 теперь вы можете использовать API String.strip для возврата строки, значением которой является эта строка, с удалением всех начальных и конечных пробелов. Javadoc для того же:

/**
 * Returns a string whose value is this string, with all leading
 * and trailing {@link Character#isWhitespace(int) white space}
 * removed.
 * <p>
 * If this {@code String} object represents an empty string,
 * or if all code points in this string are
 * {@link Character#isWhitespace(int) white space}, then an empty string
 * is returned.
 * <p>
 * Otherwise, returns a substring of this string beginning with the first
 * code point that is not a {@link Character#isWhitespace(int) white space}
 * up to and including the last code point that is not a
 * {@link Character#isWhitespace(int) white space}.
 * <p>
 * This method may be used to strip
 * {@link Character#isWhitespace(int) white space} from
 * the beginning and end of a string.
 *
 * @return  a string whose value is this string, with all leading
 *          and trailing white space removed
 *
 * @see Character#isWhitespace(int)
 *
 * @since 11
 */
public String strip()

Примеры случаев для них могут быть: -

System.out.println("".strip());
System.out.println("  both  ".strip());
System.out.println("  leading".strip());
System.out.println("trailing  ".strip());
3
ответ дан 28 November 2019 в 06:38
поделиться

Если вы не хотите использовать метод String.trim (), его можно реализовать, как показано ниже. Логика будет обрабатывать различные сценарии, такие как пробел, табуляция и другие специальные символы.

public static String trim(String str){
    int i=0;
    int j = str.length();
    char[] charArray = str.toCharArray();
    while((i<j) && charArray[i] <=' '){
        i++;
    }
    while((i<j) && charArray[j-1]<= ' '){
        j--;
    }
    return str.substring(i, j+1);

}

public static void main(String[] args) {
    System.out.println(trim("    abcd ght trip              "));

}
1
ответ дан 28 November 2019 в 06:38
поделиться
Другие вопросы по тегам:

Похожие вопросы: