Java: разделители и регулярные выражения - PullRequest
1 голос
/ 05 февраля 2011

Я использую метод сканера для работы со строкой, и мне нужно отфильтровать ненужные

вот пример строки

5/31/1948@14:57

Мне нужно вырезать / @:

Вот этот документ: http://download.oracle.com/javase/1.5.0/docs/api/java/util/regex/Pattern.html

Но это действительно сбивает с толку.

Ответы [ 4 ]

3 голосов
/ 05 февраля 2011

Вы можете использовать метод replaceAll следующим образом:

String filetredStr = inputStr.replaceAll("[@/:]","");

И если вы хотите удалить любой нецифровый номер, вы можете сделать:

String filetredStr = inputStr.replaceAll("[^0-9]","");
2 голосов
/ 05 февраля 2011

Если вы хотите разделить его, используйте String#split()

String[] parts = "5/31/1948@14:57".split("[/@:]");
1 голос
/ 05 февраля 2011

Сделайте что-то вроде этого: -

s.replaceAll("[\\/@:]", "");
0 голосов
/ 05 февраля 2011

Альтернативой replaceAll(a,b) является следующее:

String str = "5/31/1948@14:57";
String charsToRemove = "/@:";
for (int i = 0; i < charsToRemove.length(); i++) {
    str = str.replace(charsToRemove.charAt(i)+"", "");
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...