我正在编写一个简短的C#来解析给定的
XML文件.但是,标签值中的1个可以改变,但是在where子句中总是包含单词“快速启动”(忽略大小写和空格,但需要按照相同的顺序).我不知道如何在C#中的sql like语句中这样做.
var selected = from cli in doc.Descendants(xmlns+ "Result") where cli.Element(xmlns + "ResultsLocation").Value == "Assessments-Fast-Startup" select cli;
解决方法
假设你正在寻找确切的字符串 – 你可以使用String.Contains吗?
var selected = from cli in doc.Descendants(xmlns+ "Result") where cli.Element(xmlns + "ResultsLocation").Value.Contains("Assessments-Fast-Startup") select cli;
否则,像:
var rx = new Regex("fast(.*?)startup",RegexOptions.IgnoreCase); var selected = from cli in doc.Descendants(xmlns+ "Result") where rx.IsMatch(cli.Element(xmlns + "ResultsLocation").Value) select cli;