2011-10-05 281 views
2

我需要一個正則表達式來替換我的replaceAll,它將刪除2個字符串和字符串本身之間的所有內容。正則表達式刪除2個字符串之間的所有內容

例如,如果我有類似的東西。

stackoverflow is really awesome/nremove123/n I love it 

我試圖做一個replaceAll像這樣line.replaceAll(「/ n */n」,「」);這應該導致

stackoverflow is really awesome I love it 

我以爲星號意味着任何東西,但不能得到它的工作?

歡呼

回答

10

沒有,.指任何字符。 *意味着任何數量的以前的東西。所以什麼都是.*。 你需要的是

/n.*/n 

如果你想留下一個空的空間之間的話用這個代替

replaceAll("/n.*/n *", " ") 
+0

謝謝。它不適用於'stackoverflow真的很棒/ nremove123/n我喜歡它'。 「I」在「/ n」旁邊的位置 – Decrypter

+0

你的意思是什麼不起作用?你的意思是說它不會在/ n和我之間增加空格嗎?如果你用空字符串(「」)替換某個東西,它不能真的添加額外的空格,它只是把一個空字符串代替 – mb14

+0

我得到的結果是'stackoverflow真的很棒/ nremove123/n我喜歡它'我需要它沒有空間工作。乾杯 – Decrypter

3

我想你需要一個點:

的replaceAll( 「/ N */N」)

1

這將刪除ab之間的任何東西。

replaceAll("ab([;\s\w\"\=\,\:\./\~\{\}\?\!\-\%\&\#\$\^\(\)]*?)ab",""); 

請添加任何特殊字符,如果我錯過了它。

相關問題