2016-11-05 216 views
0

我需要用空格替換XML格式的字符串中的所有標籤。例如,在替換之後,<student x = 100>Nick Miles</student>將變爲Nick Miles,在Nick Miles左右有兩個空格。我試過str.replaceAll("<ref.*?>", " ")str.replaceAll(</ref>, " ")提取標籤之間的內容

它適用於大多數情況。但是,如果ref後面沒有>,則文本中的內容將被刪除。我知道是關於貪婪的限定詞,但我只是沒有解決它。有人可以提出一個可能的解決方案嗎

+0

使用一個懶惰的修飾符,所以'。*?',不是一個所有格。 –

回答

1

爲什麼要使用貪心量詞呢?你想要的恰恰相反:一旦遇到第一個>,正則表達式會停止匹配.*。這是一個lazy量詞。只需將+替換爲?,即可完成。