我知道我不应该使用 Regex 来更新 xml。但根据要求,我必须找到基于正则表达式的元素并替换它的值。
我正在调度程序 servlet 中记录所有 HTTP 请求并将其保存到文件中。在重播时,我可能需要更新其中一个 xml。
我不想将该特定的 xml 转换为Document
、解析和更新它,然后将其转换回 String。这就是为什么我想以字符串格式编辑 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);
}