我需要从字符串中提取第一个数值集。在这里(Link Here),我找到了一种RegEx方法来做到这一点。但是,在我的情况下,我有一个LINQ查询,我需要在那里做同样的逻辑。
这是我的现有逻辑
bool Isbn = db.BibContents.Any(ad => ad.NormValue == ISBN); // I need to do the numeric split logic into the db column NormValue
注意
我不能在这里循环获取值并在循环中进行比较。因为,我在DB中有大量记录,而NormValue列的类型是nvarchar(max)。
对此有任何帮助将不胜感激。
由于
答案 0 :(得分:0)
bool Isbn = db.BibContents.Any(ad => GetDigits(ad.NormValue) == ISBN);
public string GetDigits(string text) {
return string.Join("",text.AsEnumerable().Where(char.IsDigit));
}
那怎么样?
答案 1 :(得分:0)
如何将结果解析为字符串?我对LINQ知之甚少,但我会将结果解析为String并使用正则表达式。