1.賦值
直接來就行:
string ss;
ss="aaa";
或者
string常用的幾種方法、 string sa,sb;
cin>>sa;
sb=sa;
2.添加
在末尾加字符或字符串直接用加號:
string ss;
string的方法? ss+='a';
ss+="aaa";
在中間插入一個字符用ss.insert()函數:
ss.insert(ss.begin()+1,'a');//在ss[1]之前插入字符a
在中間插入一個字符串可以用替換函數ss.replace()
ss.replace(2,0,"aaa");//從第二個字符開始將連續0個元素替換為aaa(就是將aaa插入到了第二個字符前面了)
string和string。3.刪除
給ss賦空值ss=""就是把整個字符串清空了。
用ss.erase()刪除掉迭代器所指的一個或一個區間內(左閉右開)的元素。
string::iterator it=ss.begin();
ss.erase(it+1);
ss.erase(it+1,it+3);
c++ string類的常用方法、4.替換
就是用ss.replace()函數,第一個參數表示從第幾個字符開始,第二個參數表示一共替換幾個,第三個參數表示換成的字符(串);
ss="abcdefg";
ss.replace(2,2,"999");
結果ss為ab999efg;
5.查找
string常用的方法和作用、 使用ss.find()函數,查得到則返回第一個下標,查不到返回4294967295
ss.find("abc");
6.比較
使用ss.compare()函數,ss大則返回1,小返回-1,相等返回0.
ss.compare("abc");
注:所謂“大”,是指字典序大(在字典中靠后)。
string中常用的方法。7.反向排序
直接reverse(ss.begin(),ss.end());
8:第一個元素和最后一個元素
? ? ? ?
begin
語法:
iterator begin(); |
begin()函數返回一個迭代器,指向字符串的第一個元素.
9 :
查找(find)
語法:
size_type find( const basic_string &str, size_type index );size_type find( const char *str, size_type index );size_type find( const char *str, size_type index, size_type length );size_type find( char ch, size_type index ); |
find()函數:
- 返回str在字符串中第一次出現的位置(從index開始查找)。如果沒找到則返回string::npos,
- 返回str在字符串中第一次出現的位置(從index開始查找,長度為length)。如果沒找到就返回string::npos,
- 返回字符ch在字符串中第一次出現的位置(從index開始查找)。如果沒找到就返回string::npos
例如,
?
string str1( "Alpha Beta Gamma Delta" );unsigned int loc = str1.find( "Omega", 0 );if( loc != string::npos )cout << "Found Omega at " << loc << endl;elsecout << "Didn't find Omega" << endl;
10:大小寫裝換
//轉換為大寫
transform(s.begin(),s.end(),s.begin(),::toupper);
//轉換為小寫
transform(s.begin(),s.end(),s.begin(),::tolower);