std::basic_string::erase
提供: cppreference.com
< cpp | string | basic string
basic_string& erase( size_type index = 0, size_type count = npos ); |
(1) | |
(2) | ||
iterator erase( iterator position ); |
(C++11以前) | |
iterator erase( const_iterator position ); |
(C++11およびそれ以降) | |
(3) | ||
iterator erase( iterator first, iterator last ); |
(C++11以前) | |
iterator erase( const_iterator first, const_iterator last ); |
(C++11およびそれ以降) | |
文字列から指定した文字を削除します。
1)
index
から始まる文字を min(count
, size() - index
) 個削除します。2)
position
にある文字を削除します。3) 範囲
[first; last)
の文字を削除します。目次 |
[編集] パラメータ
index | - | 削除する最初の文字 |
count | - | 削除する文字の数 |
position | - | 削除する文字へのイテレータ |
first, last | - | 削除する文字の範囲 |
[編集] 返り値
1) *this
2-3) 削除された一番最後の文字の次のイテレータ
[編集] 例外
1) index > size() なら std::out_of_range
2-3) (なし)
いずれの場合においても、どんな理由であれ例外が投げられたら、この関数は作用しません (強い例外保証)。 (C++11およびそれ以降)
[編集] 例
このコードを実行します
#include <iostream> #include <algorithm> #include <string> int main () { std::string s = "This is an example"; std::cout << s << '\n'; s.erase(0, 5); // "This " を削除する std::cout << s << '\n'; s.erase(std::find(s.begin(), s.end(), ' ')); // ' ' を削除する std::cout << s << '\n'; s.erase(s.find(' ')); // ' ' から文字列の終わりまで削除する std::cout << s << '\n'; }
出力:
This is an example is an example isan example isan
[編集] 参考
内容をクリアします Original: clears the contents The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (パブリックメンバ関数) |