1 c# arrays string letter find
我需要找出如何输出包含的 所有单词"a".我有一个string所有月份,并希望输出包含 "a"到控制台的那些.这是我到目前为止所拥有的
string[] Månedsdage = {
"Januar", "Februar", "Marts",
"April", "Maj", "Juni",
"juli", "August", "September",
"Oktober", "November", "December",
"Bichat" };
for (int i = 0; i < Månedsdage.Length; i++)
{
for (int j = 0; j < Månedsdage[i].Length; j++)
{
if (Månedsdage[i].Substring(j,1) == "a")
{
Console.WriteLine("Alle måneder med A: ");
Console.WriteLine(Månedsdage[j]);
Console.ReadLine();
}
}
}
Run Code Online (Sandbox Code Playgroud)
那这个呢
string[] result = Månedsdage.Where(x=> x.ToLower().Contains('a')).ToArray();
Run Code Online (Sandbox Code Playgroud)
.Contains():要获取包含字母的所有单词,a我们使用字符串方法.此扩展方法检查作为参数传递的子字符串是否存在于给定字符串中.
Where():要对字符串数组中的每个元素应用相同的条件,我们使用Linq扩展方法.
ToLower():此方法用于以小写形式生成字符串的所有字符.所以它不会错过'A'和'a'.ToLower()将包括April在结果数组中.如果您不想April加入阵列,请不要使用ToLower()
POC:.net小提琴
输出:
Januar
Februar
Marts
April /*ToLower() ;)*/
Maj
August
Bichat
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
148 次 |
| 最近记录: |