c++で始点と終点を指定して文字列を切り取る
c++で始点と終点を指定して文字列を切り取る方法です。
stringのメンバ関数substrを使います。
substrの定義
basic_string substr(size_type pos = 0, size_type n = npos) const;
第1引数に始点を第2引数に終点を入れます。 終点が文字列の長さをオーバーしても最大サイズが返却されます。
例
// 始点からある位置までを切るとる例 string str = "aaaaaaaaaab"; printf("%s",str.substr(0,10).c_str()); // aaaaaaaaaa // 終点がオーバーしていても例外は吐かれない printf("%s",str.substr(0,100).c_str()); // aaaaaaaaaab
引数を1つにした場合は、それ以降の文字列が返されます。
string str = "aaaaaaaaaab"; printf("%s",str.substr(0,1).c_str()); // aaaaaaaaab