所以我正在寻找一种方法来编辑XML文件中的单个元素描述。使用XElement编辑属性名称
例如,说我有:
1 <stack id ="1">Stack1</stack>
2 <book id="EG-FE">This Book</book>
3 <book id="EG-FF">That Book</book>
4 <book id="FE-GT">Another Book</book>
5 <book id="JL-01">Invalid Book Id</book>
6 <stack id="2">Stack2</stack>
你会发现这本书第5行有一个奇怪的格式...的ID的第二部分(后“ - ”)的数字,其中其余的人都有信件。我怎么会去删除书5的id的只是“-01”的一部分(即其更改为:?
5 <book id="JL">Valid Book Id</book>
,而无需修改ENY其他元素(IE堆栈)
这里是我的“M尝试:
using System.Xml.Linq
XElement books = XElement.Load("{file}");
string _Attribute;
foreach (var bookID in books.Nodes())
{
if(bookID.Attribute("book"))
{
_Attribute = bookID.Attribute("book")
if(!Regex.IsMatch(_Attribute., @"^[a-zA-Z-]+$");
{
Regex.Replace(_Attribute, @"\d", "");
}
bookID.Attribute("book") = _Attribute;
}
}
显然,这是可怕的错误......关于如何解决它的任何想法
谢谢
?! 210我没有找到太多的帮助直接处理这个问题,我试图放在一起的零碎并没有真正的帮助。
因此,我很难找出如何得到元素名称...我能找到的所有帮助都是获取元素的内容。我如何得到? –
gfppaste
@gfppaste:在我的例子中,'bookID'是一个'XElement',它包含' Title '。 –
Guvante
哦,好吧,我现在明白了。哈哈谢谢,我需要这种精神上的推动! – gfppaste