Строковый формат с NumberFormat - PullRequest
0 голосов
/ 13 декабря 2011

Я форматирую строку, которую я ввожу в JTextField, используя экземпляр NumberFormat без указания местоположения. В результате у меня есть строка, которая представляет число, отформатированное с пробелами в качестве разделителя. У меня есть проблема, чтобы избавиться от пробелов, когда я хочу использовать строку для других процессов. Я пробовал string.replaceAll(" ", ""); и string.replaceAll("\\s", "");, но ничего из этого не работает.

String string = ((JTextField)c).getText();
string = string.replaceAll("\\s", "");

Также, когда я делаю int index = string.indexOf(" "); или int index = string.indexOf("\\s");, он возвращает -1, что означает, что он не находит символ. Когда я делаю

for(Character ch : string.toCharArray()) {
System.out.println("ch : " + ch.isSpaceChar(ch))
}

возвращает значение true для пустого символа. Как изображается космический символ в Java?

Я пробовал также

StringBuilder b = new StringBuilder(((JTextField)c).getText());
String string = b.toString.replaceAll("\\s", "");
System.out.println("string : " + string);

Ничто не заменит.

Ответы [ 2 ]

5 голосов
/ 13 декабря 2011

Вы пробовали string = string.replaceAll(" ", "");?- строка неизменна.

0 голосов
/ 13 декабря 2011
String string = "89774lf&933 k880990";

string = string.replaceAll( "[^\\d]", "" );

System.out.println(string);

ВЫВОД:

89774933880990

Это исключит все char, кроме digits.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...