STL之string

    科技2022-07-31  119

    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 ; }

    Processed: 0.010, SQL: 8