Język C++
basic_string::find_last_not_of
[metoda] Wyszukuje ostatnie wystąpienie znaku spoza danej bazy znaków.Składnia
#include <string>
namespace std
{
template <
class TypZnaku,
class CechowanieZnakow = char_traits < TypZnaku >,
class Alokator = allocator < TypZnaku >
>
class basic_string
{
private:
typedef basic_string < TypZnaku, CechowanieZnakow, Alokator > UtworzonaKlasaT;
public:
size_type find_last_not_of( const UtworzonaKlasaT & _str, size_type _pos = 0 ) const noexcept;
size_type find_last_not_of( const TypZnaku * _s, size_type _pos = 0 ) const;
size_type find_last_not_of( const TypZnaku * _s, size_type _pos, size_type _n ) const;
size_type find_last_not_of( TypZnaku _c, size_type _pos = 0 ) const noexcept;
};
}
Argumenty
Zwracana wartość
Pozycja ostatniego znalezionego znaku spoza bazy. Jeżeli owy znak nie został znaleziony, funkcja zwróci
npos.
Opis szczegółowy
Metoda (1) wyszukuje ostanie wystąpienie znaku spoza bazy określonej innym stringiem do pozycji
_pos w aktualnym obiekcie. Wersja (2) czyni dokładnie to samo, z tą różnicą, iż baza znaków jest określona poprzez wskaźnik do tablicy. Metoda (3) jest rozszerzoną metodą (2) o możliwość podania wielkości bazy. Ostatnia wersja (4) wyszukuje znak różny od określonego argumentem w aktualnym obiekcie.
Rzucane wyjątki
Jeżeli
_s nie wskazuje na wystarczająco dużą tablicę (
_n jest za duże), to zachowanie jest niezdefiniowane.
Przykład
#include <iostream>
#include <string>
typedef std::basic_string < char, std::char_traits < char >, std::allocator < char >> MojString;
int main()
{
MojString str( "...wyszukiwanie znakow-spoza alfabetu" );
MojString::size_type found = str.find_last_not_of( "abcdefghijklmnopqrstuvwxyz " );
if( found != MojString::npos )
{
std::cout << "Ostatni znak nie nalezacy do alfabetu to " << str[ found ];
std::cout << " na pozycji " << found << '\n';
}
return 0;
}
Standardowe wyjście programu:
Ostatni znak nie nalezacy do alfabetu to - na pozycji 22
Zagadnienia powiązane
find | Wyszukuje pierwszego wystąpienia danego łańcucha znaków. (metoda) |
---|
find_last_of | Wyszukuje ostatnie wystąpienie znaku z danej bazy znaków. (metoda) |
---|
find_first_not_of | Wyszukuje pierwsze wystąpienia znaku spoza danej bazy znaków. (metoda) |
---|
replace | Zamienia część znaków na inne. (metoda) |
---|
substr | Zwraca podciąg łańcucha znaków. (metoda) |
---|
Linki zewnętrzne
Wszystkie teksty są chronione prawami autorskimi. Kopiowanie lub rozpowszechnianie treści poza niniejszym serwisem
jest zabronione.
Powyższe ograniczenie nie dotyczy autora opracowania, któremu przysługuje prawo do rozpowszechniania własnego tekstu wedle własnego uznania.