如何使用Linq To Xml拆分多个元素中的字符串?

时间:2014-01-15 10:44:28

标签: c# string split linq-to-xml

我在xml文件中看到了一个元素:

<Adresse>15 rue de la tour montparnasse 75000 PARIS</Adresse>

从现在开始,我只阅读完整的地址,但我需要将adresse的元素分开......

string FullAdress = XmlFile.Element("Adresse").Value;   

(FullAdress="15 rue de la tour montparnasse \n75000 PARIS")

我想要分成3个元素:

string street="15 rue de la tour montparnasse" 
string ZIP="75000"
string City="PARIS"

我如何使用LinqToXml?

感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

我已经提取了您想要的数据:

var val = (from adresse in XmlFile.Elements("Adresse")
   let split = adresse.Value.Split(new[] { ' ' })
   let zip = split[split.Length - 2]
   let city = split[split.Length - 1]
   let street = string.Join(" ", split.Except(new[] { zip, city }))
   select new
   {
      Street = street,
      ZIP = zip,
      City = city
   }).FirstOrDefault();

但你必须要小心。此代码不会对数据进行任何验证。