6 kwietnia 2020

Wyrażenia regularne w C++

Kategoria: C++ Autor: FX

Biblioteka regex wymaga standardu c++11


Aby włączyć w kompilatorze DevC++:
– Narzędzia – opcje kompilatora – Dodaj te polecenia w oknie kompilatora

1
-std=c++11

Poniższy kod powinien działać

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
  #include <iostream>
  #include <regex>
  #include <string>
 
  using namespace std;
 
 
  int main()
  {
        string input;
        regex regularne("[A-Z][a-z]+"); //tworzymy zmienną z wyrażeniem
 
        while(true) //pętla nieskończona, przerywana if
        {
                cout<<"Podaj imię!"<<endl;
                cin>>input;
                if(!cin) break;
                if(input=="koniec") //koniec pętli
                        break;
                if(regex_match(input,regularne)) //sprawdzamy, czy wprowadzony napis pasuje do wyrażenia
                        cout<<"Prawidłowe"<<endl;
                else
                        cout<<"Error - powinno byc z wielkiej litery"<<endl;
        }
 }

Komentowanie wyłączone.