-6
我知道我不應該使用Regex來更新xml。但根據要求,我必須找到基於正則表達式的元素並替換它的值。
我正在記錄調度程序servlet中的所有HTTP請求並將其保存到一個文件中。在重播它時,我可能需要重新創建一個xml。
我不想將該特定的xml轉換爲Document
,解析並更新它然後將其轉換回字符串。這就是爲什麼我想以String格式編輯xml的原因。
元素名稱及其新值將作爲我的輸入。 所以
用正則表達式找到一個xml元素並替換它的值
public void findAndReplace(String xml, String elementName, String newValue)
{
String regex = '/<'+elementName+'></'+elementName+'>';
String updatedElement = '/<'+elementName+'>'+newValue+'</'+elementName+'>'
String updatedXML = xml.replaceFirst(regex, updatedElement);
}
使用XML解析器。 *「但按照要求」*完全白癡達到了這個要求?他們應該被吸引和分配。 –
如果你想查找XML中使用XPath的東西 – Eugene
@AndrewThompson我實際上記錄了一個文件中的所有HTTP請求xmls,並且可能必須更新其中的一個或兩個。我們不想將每個xml轉換爲Document,以便它們可以編輯。 –