string 的简单使用

本文介绍了如何利用C++中的substr()函数高效地在字符串中定位和提取子串,展示了其在匹配特定字符串和处理字符串段落时的实用价值。通过实例演示了str.find()、strr构造和str1查找特定子串的用法,强调了基础知识复习的重要性。
摘要由CSDN通过智能技术生成

string

str.size() 字符串的长度
auto 对string类型同样适用,不过是单个字符迭代
str.find()返回类型是int类型的坐标
str.substr(i,x)取字符串,取i坐标开始之后的x个字符,在下面的代码案例中,使用substr匹配大段字符串中的要求字符串。
string strr(str,i,x)从str的i位置开始,将其后面的x个字符作为strr的内容
如果i,x为空,那么为strr=str;

#include <bits/stdc++.h>
using namespace std;

int main(){
	string str;
	str="12345678";

	for(auto i:str){
		cout<<i<<" "; //1 2 3 4 5 6 7 8
	}
	cout<<endl;
	int t=str.find("4");
	cout<<t<<endl;
	
	string strr(str,2,5);
		for(auto i:strr){
		cout<<i<<" "; //1 2 3 4 5 6 7 8
	}
	cout<<endl;
	string str1;
	str1="welcometochuanzhi cupchuanzhi";
	int res=0;
	for(int i=0;i<str1.size();i++)
	{
		if(str1.substr(i,8)=="chuanzhi")
		res++;
	}
	cout<<res;//2
}

运行截图:
在这里插入图片描述
新知识:
1.substr()是取字符串一段字符串的函数,可以应用在匹配字符串的特定字符串中。原本看到这样的一个题是很懵逼的,然后满脑子暴力,但是有了这个substr,这种题目就可以迎刃而解了。每当这个时候我就感觉,复习一遍基础内容对我来说是多么的有必要。
2.字符串的拼接可以用appdend()和+
3.rbegin():逆向迭代,指向字符串的末尾 rend():指向字符串的开头位置
4.大小写转换 tolower toupper,配套transform(vec.begin(),vec.end(),vec.begin(),::tolower)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值