2011-10-05 411 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",""); 

请添加任何特殊字符,如果我错过了它。

相关问题