我正在尝试编写一个使用sql-server中的like %[0-9]%
的Linq查询。
这是我的开始:
string[] partNumbers = new string[]
{
"India", "US","UK", "Australia","Germany", "1", "7", "9" , "50", "A1"
};
var result = partNumbers.OrderBy(x => x).ToList();
如何在包含类似“%[0-9]%”
的c#中编写linq查询这是预期的输出:
1
7
9
50个
A1
答案 0 :(得分:1)
这可能会有所帮助:
string[] partNumbers = new string[]
{
"India", "US","UK", "Australia","Germany", "1", "7", "9" , "50", "A1"
};
char[] numbers = {'0','1','2','3','4','5','6','7','8','9'};
var result = partNumbers.Where(i=>i.Intersect(numbers).Any()).ToList();
<强>结果:强>
1
7
9
50
A1
编辑:如果您在SQL中查找LIKE
运算符,则可以使用SqlMethods.Like方法。
答案 1 :(得分:1)
您可以使用正则表达式
var result = partNumbers.Where(x => Regex.Match(x, "\\d+").Success);