Witam,
ostatnio w mojej nauce programowania c++ pojawil sie pewien problem podczas pracy z plikami(akurat teraz pliki XML).
Moje pytanie brzmi, w jaki sposob dowiedziec sie czy w stringu, ktory jest linią z pliku, wystepuje slowo ktore podaje?
I tutaj chodzi mi tylko o sam fakt wystąpienia, wiem, że dla klasy string jest metoda find() ktora zwraca iterator, ale czy jest cos latwiejszego np cos co zwraca true w przypadku wystapienia i analogicznie w przeciwnym wypadku.
Dziękuję za pomoc, pozdrawiam forumowiczów ;)
0
2
Jest <regex>
i regex_search
, ale w Twoim przypadku po prostu sprawdziłbym czy wynik find()
to nie jest npos
i czy znajduje się w tej linii. Jeśli to aż taki problem to opakuj to w funkcję/lambdę.
0
Do tego stringu wgrywam getlinem wiec sprawe, czy znajduje sie w tej linii pomijam, a jako ze jestesmy w dziale Newbie to moge sie przyznac ze nie wiedzialem o istnieniu wartosci npos, wiec to chyba bedzie rozwiazanie mojego dylematu.
Z tego co na szybkosci doczytalem stwierdzam ze na moim poziomie nie warto sie pchac do biblioteki regex ;)
0
Zastosuj std::search z <algorithm>