【发布时间】:2020-05-23 08:08:43
【问题描述】:
当我使用 XDocument.parse 时,它会将整个字符串解析为一个元素。解析后的文档没有结构。我正在使用正则表达式查找我需要处理的 XML 字符串。这是我的代码
int total=1;
List<XDocument> documents = new List<XDocument>();
Match collection = Regex.Match(innerXMl, @"<claimDetails" + total + @">[\s\S]+
<\/claimDetails" + total + ">");
Regex regex = new Regex(@"<[\/]{0,1}?claimDetails"+total+">");
System.Xml.XmlDocument document = new System.Xml.XmlDocument();
if (collection.Success)
{
string value = collection.Value;
value 变量的值为
<claimDetails1>
<regNo1>DL12SG7754</regNo1>
<chasisNo1>ME4JF505EG7144924</chasisNo1>
<engineNo1>JF50E73144192</engineNo1>
<insurerName1>Shriram General Insurance Co. Ltd.</insurerName1>
<typeOfClaim1>OD</typeOfClaim1>
<dateOfLoss1>2020-02-06</dateOfLoss1>
<claimIntimationDate1>2020-02-12</claimIntimationDate1>
<ODClaimsPaid1>8954</ODClaimsPaid1>
<whetherTotalLossClaim1>No</whetherTotalLossClaim1>
<whetherTheftClaim1>No</whetherTheftClaim1>
<totalTPClaimsPaid1>0.0</totalTPClaimsPaid1>
<tpOpenClaimProvison1>0</tpOpenClaimProvison1>
<tpCloseClaimProvison1>0</tpCloseClaimProvison1>
<expensesPaid1>0</expensesPaid1>
<claimstatus1>Claim Fully settled</claimstatus1>
<searchBasedOn1>REG_NUM</searchBasedOn1>
</claimDetails1>
我想把它解析成 Xdocument。
documents.Add(XDocument.Parse(value));
}
上面一行将 value 变量解析为 Xdocument 对象,没有错误,但整个文档只有一个元素,即 claimDetails1 和 innerXml as entire thing in between。请帮助。
【问题讨论】:
标签: c# asp.net linq-to-xml