我想从我的 XML 结构中删除所有属性。我的选择是正则表达式,但如果有更简单的方法,我愿意接受建议。
为了挑选出一个修复标签,我使用了以下内容。
String clean = Regex.Replace(filled, ".*?<holder[^>]*?>(.*?)</holder>.*?", "$1");
这给了我标签持有人的内容。我现在想保留文本质量,但省略内部标签中的所有属性。我尝试了以下方法。
String plain1 = Regex.Replace(clean, "(<[^>]*?>)(.*?)(</[^>]*?>)", "$1$2$3");
String plain2 = Regex.Replace(clean, "(<[a-zA-Z]*?)([^>]*?)(>)", "$1$3");
但它给了我同样的东西(plain1)和没有原始名称的空标签(plain2)。什么都没有清理干净,或者一切都清理干净了。我做错了什么?
我注意到将开始更改为加号,给我的标签只包含名称的第一个字母,所以我很确定以下是正确的方法,只要我能以1 美元的价格制作拾取部分最大。我怎么做?
String plain3 = Regex.Replace(clean, "(<[a-zA-Z]+?)([^>]*?)(>)", "$1$3");