string 类
assign分配赋值
assign( const char * ) 把字符串s赋值给当前字符串
assign( const char * , int n ) ; 把字符串前n个字符赋值给当前的字符串
assign( const string &s ) ; 把字符串s赋值给当前字符串
assign( int n , char c ) ; 用n个字符c赋值给当前字符串
append字符串拼接
append( const char * s ) ; //把字符串s连接到当前字符串结尾
append( const char * s , int n ) ; //把字符串s的前n个字符连接到当前字符串结尾
append( const string & s ) ; //等同于+=
append( const string & s , int pos , int n ) ; //字符串s中从pos开始的n个字符连接到字符串末尾
string 查找和替换
int find( const string & str , int pos = 0 ) const ; //查找str第一次出现位置,从pos开始查找
int find( const char * s , int pos = 0 ) const ; //查找s第一次出现位置,从pos开始查找
int find( const char * s , int pos , int n ) const ; //从pos位置查找s的前n个字符第一次位置
int find( const char c , int pos = 0 ) const ; //查找字符c第一次出现位置
int rfind( const string & str , int pos = npos ) const ; //从pos开始查找str最后一次位置
int rfind( const char * s , int pos = npos ) const ; //从pos开始查找s最后一次出现位置
int rfind( const char * s , int pos , int n ) const ; //从pos查找s的前n个字符最后一次位置
int rfind( const char c , int pos = 0 ) const ; //查找字符c最后一次出现位置
string & replace( int pos , int n , const string & str ) ; //替换从pos开始n个字符为字符串str
string & replace( int pos , int n , const char * s ) ; //替换从pos开始的n个字符为字符串S
string 字符串比较
按照ASCII码进行对比
=返回0 >返回1 <返回-1
int compare( const string &s ) const ;
int compare( const char * s ) const ;
str1.compare( str2 ) ;
string 字符存取
char & operator[] ( int n ) ; //通过[] 方式取字符 str[3] ;
char & at( int n ) ; //通过at方法取字符
string 插入和删除
string & insert( int pos , const char * s ) ; //插入字符串
string & insert( int pos , const string & str ) ; //插入字符串
string & insert( int pos , int n , char c ) ; //在指定位置插入n个字符c
string & erase( int pos , int n = npos ) ; //删除从Pos开始的n个字符
string 子串
string substr( int pos = 0 , int n = npos ) const ; //返回由pos开始的n个字符组成的字符串
练习
#include<iostream>
#include<string>
using namespace std ;
int main()
{
string email ;
cout << "输入邮箱:" ;
cin >> email ;
cout << "您的邮箱用户名为" ;
int pos = email.find('@') ;
string usr = email.substr( 0 , pos ) ;
cout << usr << endl ;
cout << "邮箱:" ;
cout << email << endl ;
return 0 ;
}