【发布时间】:2018-06-12 18:07:17
【问题描述】:
我有一个代码正在运行,但它不检查字符是否按顺序排列,它只检查它们是否在那里。如何修改我的代码,以便在字符串中按该顺序检查字符“gaoaf”?
Console.WriteLine("5.feladat");
StreamWriter sw = new StreamWriter("keres.txt");
sw.WriteLine("gaoaf");
string s = "";
for (int i = 0; i < n; i++)
{
s = zadatok[i].nev+zadatok[i].cim;
if (s.Contains("g") && s.Contains("a") && s.Contains("o") && s.Contains("a") && s.Contains("f") )
{
sw.WriteLine(i);
sw.WriteLine(zadatok[i].nev + zadatok[i].cim);
}
}
sw.Close();
【问题讨论】:
-
你为什么不用
s.Contains("gaoaf")? -
如果你想找到
gaoaf,那么你可以将它传递给 string.Contains() 方法。或者你想找到 "ngpwarosatgf" -
我正在按此顺序搜索包含这些字母的歌曲。如果整首歌是例如:Omega:Ortaf,输入 s.Contains("gaoaf") 会起作用吗?
-
不,这就是我问的原因。这可能是正则表达式的工作,或者您将只在找到前一个字母之后才查看子字符串并搜索下一个字母,而当您编码以处理不同的字符串时,这将变得很棘手。
-
您还可以指定这是一个特定的字符串还是要比较的字符串是可变的?换句话说,这总是在寻找“gaoaf”,还是您以后需要搜索另一组字符?