首页 > 其他分享 >string用法2

string用法2

时间:2023-02-06 20:33:40浏览次数:44  
标签:index cout strInput str1 用法 day string


# include <iostream>
# include <string>
# include <algorithm>

using namespace std;

int main(){

string strSTLString("Hello world");

/*
关于String类型的字符串的输出
*/
//1.
//size_t 就是无符号整数 unsigned int
for(size_t i=0;i<strSTLString.length();i++){
cout<<strSTLString[i];
}
cout<<endl;

//2.
cout<<strSTLString<<endl;

//3.迭代器
string::const_iterator itr;
for(itr=strSTLString.begin();itr!=strSTLString.end();itr++){
cout<<*itr;

}
cout<<endl;


//4.C语言的字符串,c_str()函数返回C语言字符串
cout<<strSTLString.c_str()<<endl;
cout<<"------------------------------"<<endl;


/*
字符串的连接 str2连接到str1的后面
*/
//1.
string str1="AAA";
string str2="BBB";
str1+=str2;
cout<<str1<<endl;

//2. 用append追加
str1.append(str2);
cout<<str1<<endl;

//3.追加C语言数组
char a[4] = "CCC";
//相当于 const char *a = "CCC";
str1.append(a);
cout<<str1<<endl;


/*
在字符串中查找某个字符串或字符
*/
//1.找第一个位置的时候
str1 = "Good day String! Today is beautiful!";
cout<<str1<<endl;
size_t index = str1.find("day",0);//代表从第0个位置开始day字符串
if(index!=string::npos)// npos相当于-1
{
cout<<index<<endl; //输出的是下标
}
else
{
cout<<"没有找到"<<endl;
}

//2.找到字符串中所有的
str1 = "Good day String! Today is beautiful!";
cout<<str1<<endl;
index = str1.find("day",0);//代表从第0个位置开始day字符串
while(index!=string::npos)// npos相当于-1
{
cout<<index<<endl; //输出的是下标
index = str1.find("day",index+1);
}

//3.所有的字符a
str1 = "Good day String! Today is beautiful!";
cout<<str1<<endl;
index = str1.find('a',0);//代表从第0个位置开始day字符串
while(index!=string::npos)// npos相当于-1
{
cout<<index<<endl; //输出的是下标
index = str1.find('a',index+1);
}

//1.
str1 = "Good day String! Today is beautiful!";
cout<<str1<<endl;
cout<<str1.erase(4,10)<<endl; //删除4下标的连续的10个
cout<<str1<<endl;// str1字符串本身发生改变

//2.find算法,迭代器
string::iterator iCharS = find(str1.begin(),str1.end(),'s');//查找是否含有s,有返回位置
if(iCharS!=str1.end())
str1.erase(iCharS);//删除 iCharS
cout<<str1<<endl;

//3.删除全部
str1 = "Good day String! Today is beautiful!";
//cout<<str1.erase(str1.begin(),str1.end())<<endl;

/*
字符串翻转 reverse
*/

reverse(str1.begin(),str1.end());


/*
大小写的转换
*/

cout<<"请输入一行字符串:"<<endl;
string strInput;
getline(cin,strInput);

//把字符串转换为大写
transform(strInput.begin(),strInput.end(),strInput.begin(),toupper);
//这句代码的意思是从 strInput.begin()开始到 strInput.end()结束, 转换为源数组的位置strInput.begin,转化为大写

transform(strInput.begin(),strInput.end(),strInput.begin(),tolower);
return 0;
}


标签:index,cout,strInput,str1,用法,day,string
From: https://blog.51cto.com/u_15955675/6040457

相关文章

  • sting用法1
    #include<iostream>#include<string>usingnamespacestd;intmain(){charpszName[20]="张飞";char*pszName2="张飞";stringstrName("张飞");c......
  • numpy的用法-02
    importnumpy#1.array把数组转化为矩阵In[9]:#itwillcomparethesecondvaluetoeachelementinthevector#Ifthevaluesareequal,thePythoninterpre......
  • numpy的用法-03
    #coding=utf-8importnumpyasnpimportnumpyaspia=np.arange(15).reshape(3,5)#arange����0-14������reshape���3*5�ľ���print(a)print(a.shape)#输出行和列的长度print(a.ndim)#t......
  • String的面试题
    //去除首尾的空格privatestaticStringclaerTrim(Stringstr){Stringst="";intflag=0;intfirst=0,last=str.length();for(inti=0;i<s......
  • StringBuffer增长方式
    StringBuffer其实就是一个存储字符的容器。笔试题目:使用Stringbuffer无参的构造函数创建一个对象时,默认的初始容量是多少?如果长度不够使用了,自动增长多少倍?StringBuff......
  • String类构造方法与普通方法--Java基础058
    packagetest;publicclassDemo1{publicstaticvoidmain(String[]args){//1对象的比较Stringstr1="hello";Stringstr2="hello";......
  • mysql concat函数的用法
    mysql中的这个函数非常强大,可以对查出的参数进行拼接,其实这个方法在java中也有api可以进行调用。那么什么时候进行使用呢?例如,你老大叫你做一个数据库的数据采集,需要整理成......
  • Javascript(es2016) import和require用法和区别
    写个简单js文件,假设名字为:lib.js。假设内容如下:exportconstsqrt=Math.sqrt;exportfunctionsquare(x){returnx*x;}exportfunctiond......
  • tf.split()函数的用法
    fromPILimportImageimportnumpyasnpimporttensorflowastf'''split对维度进行分割tf.split(data,数据图片(300*600*3)......
  • Java8中匹配两个list的数据(string的list与对象list的属性求差集)
    场景Java8新特性-Stream对集合进行操作的常用API:https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/126070657上面介绍常用api的使用,下面记录一个常用场景的......