Kezdőoldal » Számítástechnika » Programozás » Hogy lehet ezt megoldani...

Hogy lehet ezt megoldani C-ben vagy C#-ban?

Figyelt kérdés

Sziasztok! Gondolom, hasonlóan lehet megoldani C#-ban is, mint C-ben, ezáltal kényelmi okokból (C-ben nincs string adattípus) C# kódot adok meg! Van ez a kód:


using System;


class main

{

static public void Main()

{

string szoveg = "Hülye vagy!";

if ( szoveg == "Hülye" )

{

Console.WriteLine("Nem szerepelhet benne a hülye szó!");

Console.ReadKey();

}

}

}


Ez ugye kiírja a "Nem szerepelhet benne a hülye szó" szöveget, HA csak a "hülye" a tartalma, viszont a változó nemcsak a "hülye" szót tartalmazza!


Az lenne a kérdésem, hogy hogy lehet megoldani azt, hogy ha nem csak a hülye szó szerepel benne, DE a többi szón kívül található benne hülye szó, akkor is kiírja ezt? Magyarán a "hülye" eleme a változónak.



2015. okt. 10. 18:00
 1/10 anonim ***** válasza:

Például feldarabolod a stringet egy string tömbbé szóközök helyén? És végig futtatsz egy for-t, hogy van-e ilyen szavú elem?


VAGY: reguláris kifejezés


Sok sikert.

2015. okt. 10. 18:05
Hasznos számodra ez a válasz?
 2/10 anonim ***** válasza:

Megoldhato, az IndexOf fugvennyel.

[link]


if ( szoveg.IndexOf("Hulye") != -1 )

_ _ Console.WriteLine("Nem szerepelhet benne a hülye szó!");

2015. okt. 10. 18:07
Hasznos számodra ez a válasz?
 3/10 anonim ***** válasza:

C-ben is ugyanez, ezzel:

[link]


Esetleg még kisbetűssé is alakíthatod előtte mindkét szöveget, még jobb.

2015. okt. 10. 18:15
Hasznos számodra ez a válasz?
 4/10 A kérdező kommentje:
Köszönöm szépen! Ezzel rengeteget segítettél! :)
2015. okt. 10. 18:34
 5/10 anonim ***** válasza:

C#-ban IndexOf helyett a szoveg.Contains("Hülye") egyszerűbb... persze ez nem a hülye szót keresi, hanem a Hülye stringet, tehát pl a Hülyeséget is megtalálja. De csak nagy betővel. Az IndexOf-nak van olyan paraméterezése, ami vár StringComparsion-t (pl: StringComparison.CurrentCultureIgnoreCase)


Ha tényleg szavakat akarsz keresni, akkor vagy regex, vagy spliteled a megfelelő karakterek szerint (szóköz, vessző, pont, kettőspont, stb, ami még lehet)... ahogy már irták.

2015. okt. 10. 18:42
Hasznos számodra ez a válasz?
 6/10 anonim ***** válasza:
A regex nem szókeresésre lett kifejlesztve.
2015. okt. 10. 18:59
Hasznos számodra ez a válasz?
 7/10 anonim ***** válasza:

Ha még biztosabbra akarsz menni, akkor:


szoveg.ToLower().Contains("hülye")


Így a kis és nagybetű sem probléma :)

2015. okt. 10. 19:49
Hasznos számodra ez a válasz?
 8/10 anonim válasza:
# 6 és a számítógép se gyakorizásra
2015. okt. 12. 06:47
Hasznos számodra ez a válasz?
 9/10 anonim válasza:
# 7 toloweres szar megoldásokkal takarodjatok már innen...
2015. okt. 12. 06:50
Hasznos számodra ez a válasz?
 10/10 anonim ***** válasza:

string s = "123TeSzT456";

int i = s.IndexOf("teszt", StringComparison.CurrentCultureIgnoreCase);

2015. okt. 12. 12:54
Hasznos számodra ez a válasz?

További 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

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!