2011-02-05 5 views
1

Я использую метод сканера, чтобы сделать работу на строку и нужно отфильтровать НежелательнаяJava: Разделители и регулярные выражения

вот строковое образец

5/31/[email protected]:57 

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

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

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

+0

Что вы имеете в виду, лишить их? Похоже, у вас там есть дата-время; если вы удалите эти символы, вы останетесь с бессмысленной последовательностью цифр. –

ответ

2

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

String[] parts = "5/31/[email protected]:57".split("[/@:]"); 
+0

Я закончил с использованием этого варианта. Спасибо! –

3

Вы можете использовать метод replaceAll как:

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

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

String filetredStr = inputStr.replaceAll("[^0-9]",""); 
1

ли что-то вроде этого: -

s.replaceAll("[\\/@:]", ""); 
0

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

String str = "5/31/[email protected]:57"; 
String charsToRemove = "/@:"; 
for (int i = 0; i < charsToRemove.length(); i++) { 
    str = str.replace(charsToRemove.charAt(i)+"", ""); 
} 
Смежные вопросы