我正在閱讀文本文件,並且希望找到正確的文本標記。但我在句子末尾有點問題。我的代碼是以下代碼,查詢表示輸入字符串:使用正則表達式清理文本
query = query.replaceAll("[^\\p{L}\\s0-9-_/.]", "");
query = query.replaceAll("\t", " ");
query = query.replaceAll("\r", " ");
query = query.replaceAll("\n", " ");
StringTokenizer words = new StringTokenizer(query, " ");
while(tokens.hasMoreTokens()){
String str=tokens.nextToken();
String regex = "\\d+.\\d+";
if(!str.matches(regex)) *<- second problem*
System.out.println(str);
例如,輸入文本是以下行
THE WORLD OF UNIQUE VENDING CARTS. [email protected] www.ubc_lib?9867.come/homepage 876454 9890-9999-9099.
我想下面的字符串作爲輸出
THE WORLD OF UNIQUE VENDING CARTS
[email protected]
www.ubc_lib?9867.come/homepage
9890-9999-9099
但我真正出了放點在輸出的第一和最後一行的末尾。 我不能刪除點(。),因爲它會從每個地方刪除。
THE
WORLD
OF
UNIQUE
VENDING
CARTS.ff_lashkariyahoo.com *<-problem*
www.unb_lib9867.come/homepage
9890-9999-9099. *<-problem*
另外我想刪除像4,764,90.900不76-098-098只有數字,我找不到任何比期運用比賽功能較好。就是有什麼辦法也解決了這個問題。
你能幫我嗎?
那麼,你已經指定,當你想刪除點(在結束/空間之前),所以我會從那裏開始。所以,從初學者的removeAll字符類中移除它。 – keyser 2015-02-06 16:17:12
@keyser如果我從這個部分刪除點'query.replaceAll(「[^ \\ p {L} \\ s0-9 -_ /。]」,「」)',那麼字符串_yahoo.com_將更改爲_yahoocom – user3487667 2015-02-06 19:34:11