我的XML包含在一个字符串中,该字符串包含许多元素的无效xml标记,如果标记以数字开头,则标记为“无效”。例如,以下内容无效:
<1>....</1>, <123abc>, etc.
在XML中,我们会将某些标记识别为无效:
<tag1> ----> valid tag
<1tagname>....</1tagname> --->invalid tagname
<2tagname>....</2tagname> --->invalid tag name
</tag1> ----> valid tag
我想获取一个无效的xml标签列表,我想添加一个特殊字符串作为前缀,让我们说“item”,以便将无效转换为有效的标签名称。
我正在使用Java语言兼容的正则表达式。
答案 0 :(得分:1)
您可以使用:
String result = yourstr.replaceAll("(?<=</?)(?=[0-9])", "item");
答案 1 :(得分:-1)
您可以使用堆栈。
<强>解释强>
就像括号表达式有效一样。 你的代码应该像这样工作:
这将解决简单案例。 有一些边缘情况,比如在合法标签内有不匹配的结束标签,可能还有更多