Informatică, întrebare adresată de ElenaGr, 8 ani în urmă

Bună! Mă poate ajuta cineva cu asta?

Anexe:

Răspunsuri la întrebare

Răspuns de micloseduard
0

Răspuns:

#include <iostream>

#include <regex>

int main(){

   std::string str;

   std::getline(cin, str);

   std::regex reg("\\-(\\d+)(,\\d+)?");

   std::cout<< regex_replace(str, reg, "");

   return 0;

};

Explicație:

https://ro.wikipedia.org/wiki/Expresie_regulat%C4%83


ElenaGr: Nu înțeleg nimic. nu se poate altfel?
ElenaGr: nu am mai auzit de regex. Merge așa la BAC?
micloseduard: Bună. Îmi cer scuze. Eu nu sunt la profil mate-info și nu știu exact ce anume conține programa voastră. Am să caut o altă soluție.
Dar am să încerc să îți explic: Expresiile regulate sunt folosite pentru căutarea anumitor caractere sau înlănțuiri de caractere în cadrul unui document sau text. Să analizăm expresia:
micloseduard: „\\” - escape character pentru dash.
„-” - minusul care trebuie căutat.
„(\\d+)” - unul sau mai multe numere care urmează după minus.
„(,\\d+)” - unul sau mai multe numere care urmează după virgulă (în caz de float)
„?” - opțional (adică există și numere care nu sunt float).
ElenaGr: mi-e nu mi-a mers programul acesta și era getline(std::cin, str);
micloseduard: Mulțumesc.
Ciudat, la mine a rulat perfect.
ElenaGr: ok, atunci poate nu am nimerit limbajul. Ești drăguț să-mi zici ce ai folosit?
micloseduard: C++.
ElenaGr: ok, nu-i problemă l-am făcut cu strtok. Deși nu pream place, ar trebui s-o rețin
Alte întrebări interesante