所以我正在寻找一种方法来编辑 XML 文件中的单个元素描述。
例如,假设我有:
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>
不修改任何其他元素?(IE 堆栈)
这是我正在尝试的:
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;
}
}
显然,这是非常错误的......关于如何解决它的任何想法?
谢谢!
我没有找到太多直接处理这个问题的帮助,而且我试图拼凑的点点滴滴并没有真正的帮助。