[英]C# string.Contains using variable
string[] pullspec = File.ReadAllLines(@"C:\fixedlist.txt");
foreach (string ps in pullspec)
{
string pslower = ps.ToLower();
string[] pslowersplit = pslower.Split('|');
var keywords = File.ReadAllLines(@"C:\crawl\keywords.txt");
if (pslower.Contains("|"))
{
if (pslower.Contains(keywords))
{
File.AppendAllText(@"C:\" + keyword + ".txt", pslowersplit[1] + "|" + pslowersplit[0] + "\n");
}
}
}
由于pslower.Contains(keywords)
, pslower.Contains(keywords)
无法编译,但我没有尝试执行100个foreach循环。
有人有什么建议吗?
使用LINQ:
if (keywords.Any(k => pslower.Contains(k)))
您有一组关键字,并且想要查看给定的字符串中是否包含任何关键字(或所有关键字?)。 我不明白如果不在某个函数或linq表达式中显式或隐藏地使用循环,如何解决此问题。
另一个解决方案-创建关键字的String [],然后创建string[] parts = pslower.Split(yourStringArray, StringSplitOptions.None);
-如果出现任何字符串,则显示part.Length> 1.不会轻易通过这种方式使用关键字。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.