[C++] Przypisywanie elementów stringa do kilku zmiennych


(niesuszek) #1

Witam. Czy istnieje jakiś sposób na przypisywanie kilku różnych elementów stringa do kilku różnych zmiennych? Chodzi mi o wczytywanie daty z formatu RRRR-MM-DD, np.

string data = "2013-02-11"

możemy otrzymać:

string rok = "2013"

string miesiac = "02"

string dzien = "11"

(kostek135) #2

Najprościej dla tego przypadku brać znak po znaku i używać += do konkatenacji do nowego string'a? Masz stałe długości rok 4 miesiąc i dzień po 2.

Dla ogólnego przypadku trzeba byłoby napisać funkcję, która sprawdzi, czy znak jest rozdzielnikiem jeśli tak tworzy nowy string itd. Na koniec zwraca powiedzmy vector stringów.


(Ebleble) #3

Najbardziej łopatologicznie to tak

string rok = data.substr(0, 4);

string miesiac = data.substr(5, 2);

string dzien = data.substr(8, 2);

ale do takich rzeczy powinno się używać wyrażeń regularnych.


(niesuszek) #4

Dzięki wielkie za pomoc, wskazówki się przydały :slight_smile:

Pozdrawiam