如果所比较的两个string 相等,则返回0; 操作string 大于参数string,返回

正数;操作string 小于参数string,返回负数。

(1) 比较操作string 与 _Str 或C-string _Ptr

int compare( const basic _ string& _Str ) const;

int compare( const value _ type* _Ptr ) const;

int com = s.compare ( sp );

(2) 比较操作string 中 _Pos1 ( 下标)开始的 _Num1 个字符 与 string _Str

比较操作string 中 _Pos1 ( 下标)开始的 _Num1 个字符 与 C-string _Ptr

比较操作string 中 Pos1 ( 下标)开始的 Num1 个字符 与 Str 中 Off ( 下标)开始 Count 个字

int compare( size _ type _Pos1 , size _ type _Num1 , const basic _ string& _Str );

int compare( size _ type _Pos1 , size _ type _Num1 , const value _ type* _Ptr ) const;

int compare( size _ type _Pos1 , size _ type _Num1 , const basic _ string& _Str ,

size _ type _Off , size _ type _Count );

int com1 = s.compare ( 2 , 3 , sp );

int com2 = s.compare ( 2 , 3 , c );

int com3 = s.compare ( 1 , 3 , cs , 3 ,1 );

basic_string::erase

删除string 中的一个或几个元素。前两个成员函数,返回要被删除的子串的下

一个元素的iterator; 第三个函数,返回删除后的string 的引用。

(1) 删除string 中从 _ First 到 _ Last 的字符

iterator erase( iterator _First , iterator _Last );

basic_string ::iterator s_Iter;

s_Iter = s.erase ( s.begin ( ) + 3 , s.end ( ) - 1 ); // s_Iter=s.end( )

(2) 删除string 中 _It 所指的字符

iterator erase( iterator _It );

s_Iter = s.erase ( s.begin ( ) + 5 );

(3) 删除string 中从 _Pos ( 下标)开始的 _Count 个字符

basic _ string& erase( size _ type _Pos = 0, size _ type _Count = npos );

str = s.erase ( 6 , 8 ); // str 也是 string

basic_string::find

寻找给定的string。返回找到的第一个string 下标值;如果没找到则返回npos。

(1) 找一个character _Ch 。(默认从头找)

size _ type find( value _ type _Ch , size _ type _Off = 0 ) const;

string s ( "Hello Everyone" );

basic_string ::size_type index1, index2;

static const basic_string ::size_type npos = -1;

index1 = s.find ( "e" , 3 ); // index1=8, 不是 6

index2 = s.find ( "x" ); // index2=-1

if ( indexCh1a != npos ) cout <else cout << "The character 'e' was not found in str1 ." << endl;

(2) 找一个C-string。(默认从头找)

size _ type find( const value _ type* _Ptr , size _ type _Off = 0 ) const;

string s ( "Let me make this perfectly clear." );

basic_string ::size_type index;

const char *c = "perfect";

index = s.find ( c , 5 ); // index=17

(3) 找一个string。(默认从头找)

size _ type find( const basic _ string& _Str , size _ type _Off = 0 ) const;

C++中string类的使用方法的更多相关文章

  1. 【转载】C#中string类使用Replace方法来替换字符串

    在C#的字符串操作过程中,有时候需要替换字符串中的某个子字符串,此时就可以使用到字符串类自带的Replace方法来实现,Replace方法将查找到所有符合被替换的子字符串,然后将之全部替换为目标字符串 ...

  2. 【转载】C#中string类使用Remove方法来移除指定位置的字符

    在C#的字符串操作过程中,有时候需要将字符串中指定位置的字符移除,此时就可能使用到字符串类string类中的Remove方法,此方法允许指定移除开始的开始的索引位置,以及移除的长度信息等,共有2个重载 ...

  3. 【转载】C#中string类使用Substring方法截取字符串

    在C#的字符串操作过程中,截取字符串是一种常见的字符串操作,可使用string类的Substring方法来完成字符串的截取操作,该方法支持设定截取的开始位置以及截取的字符串长度等参数,Substrin ...

  4. Java中String类的format方法使用总结

    可参考: http://www.cnblogs.com/fsjohnhuang/p/4094777.html http://kgd1120.iteye.com/blog/1293633 String类 ...

  5. 关于Java中String类的hashCode方法

    首先来看一下String中hashCode方法的实现源码 public int hashCode() { int h = hash; if (h == 0 && value.lengt ...

  6. JAVA中String类的intern()方法的作用

    一般我们变成很少使用到 intern这个方法,今天我就来解释一下这个方法是干什么的,做什么用的 首先请大家看一个例子: public static void main(String[] args) t ...

  7. 103、Java中String类之compareTo()方法

    01.代码如下: package TIANPAN; /** * 此处为文档注释 * * @author 田攀 微信382477247 */ public class TestDemo { public ...

  8. 098、Java中String类之charAt()方法

    01.代码如下: package TIANPAN; /** * 此处为文档注释 * * @author 田攀 微信382477247 */ public class TestDemo { public ...

  9. JAVA中string类的split方法

    split([separator,[limit]])第一个参数为分隔符,可以是一个正则表达式,第二个参数为返回结果数组的长度

随机推荐

  1. Ubuntu下安装使用MongoDB

    安装 官网下载: https://www.mongodb.org/ 解压解包 重命名为mongodb 移动到/usr/local/目录下 创建连个软连接  ln -s /usr/local/mongo ...

  2. Bcdedit命令使用详解使用方法

    XP,WIN2003,VISTA,万indows,WIN2008多盘多系统多引导bcdedit的使用windows出了新系统vista,2008想赏赏鲜学习学习~~但又习惯于用旧的XP,2003,然而 ...

  3. zf-关于公司框架的时间字段的格式转换问题。。

    <ww:date value="" format="yyyy-MM-dd">

  4. tcp 的6个控制位

    原文:http://blog.chinaunix.net/uid-26413668-id-3376762.html TCP(Transmission Control Protocol) 传输控制协议 ...

  5. UITabBar 蓝色

    效果图1: 第一种解决办法(有局限性): 但是,但是!!!!!虽然不用写代码看起来好方便,在iOS9和8上貌似都没问题.然后我默默地 拿出了自己的小4,发现还似蓝色... 第二种解决办法:(彻底): ...

  6. VMware克隆CentOS虚拟机后固定IP的问题

    由于克隆虚拟机,VMware只是修改了虚拟机的名字等信息,并没有修改虚拟硬盘中的任何信息,导致克隆后网卡的MAC地址和操作系统中记录的mac地址不符,导致eth0启动不起来.操作系统记录了一个新网卡的 ...

  7. Android--->activity高级运用,保存前一个界面为完成的数据savedInstanceState。

    main.xml布局代码分析 <?xml version="1.0" encoding="utf-8"?> <LinearLayout xml ...

  8. oracle 主键自动增长

    oracle 主键自动增长 2009-12-11 16:07:00|  分类: 数据库资料|字号 订阅     这几天搞Oracle,想让表的主键实现自动增长,查网络实现如下: create tabl ...

  9. HTTP协议详解 转自小坦克

    -- 此文章是转载小坦克的;直接复制文章的目的是因为原文章地址经常被重置,找不到原来的文章.小坦克博客园主页:https://home.cnblogs.com/u/TankXiao/ 当今web程序的 ...

  10. B进制加法(洛谷1604)

    分析:码农题,照这模拟就行,高精度的B进制,注意字符串反转的技巧. #include <iostream> #include <cstdio> #include <cst ...