我正在尝试将我在 ActionScript 中编写的函数移植到 Java,但遇到了一些麻烦。我已经包含了下面的功能。我找到了对问题 #375420的回复,但我真的需要编写一个单独的课程吗?谢谢。
public static function replaceXML(str:String):String {
return str.replace(/[\"'&<>]/g, function($0:String):String {
return StringUtil.substitute('&#{0};', $0.charCodeAt(0));
});
}
输入
<root><child id="foo">Bar</child></root>
输出
<root><child id="foo">Bar</child></root>
更新
如果有人想知道,这是我的解决方案。感谢Sri Harsha Chilakapati。
public static String replaceXML(final String inputStr) {
String outputStr = inputStr;
Matcher m = Pattern.compile("[&<>'\"]").matcher(outputStr);
String found = "";
while (m.find()) {
found = m.group();
outputStr = outputStr.replaceAll(found,
String.format("&#%d;", (int)found.charAt(0)));
}
return outputStr;
}