0
我有這個字符串:如何做這個分隔符?
1945年:紐約大學:70:俄亥俄州:65
我想用掃描器讀取它,並忽略':'
,70
和65
,這是分數字段。但是我想讓它讀一年。我知道如何設置分隔符來丟棄所有數字和':'
,但我不知道如何讓它只丟棄某些數字。我在說什麼實際上可以做到?
我有這個字符串:如何做這個分隔符?
1945年:紐約大學:70:俄亥俄州:65
我想用掃描器讀取它,並忽略':'
,70
和65
,這是分數字段。但是我想讓它讀一年。我知道如何設置分隔符來丟棄所有數字和':'
,但我不知道如何讓它只丟棄某些數字。我在說什麼實際上可以做到?
我的回答,轉貼SANS幽默
Scanner scanner = new Scanner("1945:New York University:70:Ohio State:65");
scanner.useDelimiter(":(\\d\\d:?)?");
while(scanner.hasNext()) {
System.out.println(scanner.next());
}
scanner.close();
嘗試
Scanner sc = new Scanner("1945:New York University:70:Ohio State:65");
sc.useDelimiter(":\\d+:|:\\d+$|:");
while(sc.hasNext()) {
System.out.println(sc.next());
}
輸出
1945
New York University
Ohio State
如果你是確保前4個字符是必需的一年,爲什麼不使用'String.substring(0,4)'來解壓? – SudoRahul 2013-04-10 05:03:51
斯普利特':'字符,通過它循環,忽略哪一個不是數字 – 2013-04-10 05:05:40
你想讀的年份,大學和州只我是對嗎? – 2013-04-10 05:15:26