Hogyan lehet C#-ban olyan programot készíteni, ami megszámolja a szóközök számát?
Sikerült odáig eljutnom, hogy 1 szóközt megszámol, de utána nem számolja tovább?
string be;
int szokozszamlalo;
int szoveghossza;
be = tbbe.Text;
szoveghossza = be.Length;
szokozszamlalo = 0;
for (int i =szoveghossza-1; i < szoveghossza; i++)
{
if (be.Contains(" "))
{
szokozszamlalo = szokozszamlalo+1;
}
}
MessageBox.Show("A szóközök száma: " + szokozszamlalo.ToString());
}
}
}
A válaszokat előre is köszönöm!
string s = "..."; //<= ebben van a szöveg
int cnt = 0; //<= ez a számláló
for(int i=0; i<s.length; i++)
if(s[i] == " ") cnt++;
//ezen a ponton a cnt-ben máris benne van a szóközök száma
vagy:
string s = "..."; //<= ebben van a szöveg
int cnt = s.Count(c => c == ' ');
//ezen a ponton a cnt-ben máris benne van a szóközök száma
using System.Linq;
using System;
class Program
{
static void Main()
{
String str = "rg eromg kerglkrglk erglk rgkl ger";
Console.WriteLine(str.SpaceCount());
}
}
public static class StringExtension
{
public static Int32 CharCount(this String str, Char ch)
{
return str.Count(c => c == ch);
}
public static Int32 SpaceCount(this String str)
{
return str.CharCount(' ');
}
}
Ez egy jó gyakorlás a megszámlálás tételére, de sokkal egyszerűbb -- programnyelvtől függetlenül -- kicserélni minden szóközt üres stringre, és a kapott string hosszát kivonni az eredetiéből.
Ha foglalkozol szövegkezeléssel Excelben, akkor hamar jönnek az efféle ötletek, mert ott nincs jobb. :-)
Kapcsolódó kérdések:
Minden jog fenntartva © 2025, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!