10
18
2015
0

有关字符串的函数

用字符串来存储字符串

string str1,str2;

cin>>str1>>str2;

//如输入“hello, world”则str1=”hello,” str2=”world”

可直接赋值: str1=str2;

1. 字符串长度

len = str1.length();

2. 字符串比较

可以直接比较,即str1>str2;str1==str2;等

3. 连接

可以直接连接,即str1 += str2;等

4. 字符串提取

str2 = str1.substr(); //str2值被赋值为str1

str2 = str1.substr(pos1);

//如str2=str1.substr(2);则str2=”llo”;

str2=str1.substr(pos1,len1); //提取指定位置指定长度的字符串,

如str2=str1.substr(1,2) ;则str2=”el”

主要功能是复制子字符串,要求从指定位置开始,并具有指定的长度。

注意字符串中第一个字符下标为0

其中参数依次是 ( 串,开始,长度),并返回子串。

5. 字符串搜索

where = str1.find(str2); //返回str2在str1中的最先被找到的位置

where = str1.find(str2,pos1);// pos1是从str1的第几位开始。

where = str1.rfind(str2);// 从后往前搜。

6. 插入字符串

不是赋值语句。

str1.insert(pos1,str2); //如str1.insert(2,str2)则str1=”heworldllo,”

注:从str1的pos1位置处插入str2

str1.insert(pos1,str2,pos2,len2);

str1.insert(pos1,numchar,char);// numchar是插入次数,char是要插入的字符。

网上这部分的内容不多,大概STL比较常用吧。

7. 替换字符串

str1.replace(pos1,str2);

str1.replace(pos1,str2,pos2,len2);

8. 删除字符串

str.erase(pos,len);

str.clear();

9. 交换字符串

swap(str1,str2);

注意:

1.要包含头文件#include

2.在有些场合下用字符数组char st1[100]比string st2还好用些,可根据具体情况作不同选择。

3.在读入一个含有空格的字符串时用cin是不行的(cin读字符串或字符数组时,自动以空格或回车作为分格符!

Category: 字符串 | Tags: | Read Count: 559

登录 *


loading captcha image...
(输入验证码)
or Ctrl+Enter

Host by is-Programmer.com | Power by Chito 1.3.3 beta | Theme: Aeros 2.0 by TheBuckmaker.com