前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >C++:string 截取字符串

C++:string 截取字符串

作者头像
全栈程序员站长
发布2022-08-31 14:57:08
1.6K0
发布2022-08-31 14:57:08
举报

大家好,又见面了,我是你们的朋友全栈君。

代码语言:javascript
复制
string str="123abc456";     int i=3;

1 取字符串的前i个字符

str=str.Substring(0,i); // or str=str.Remove(i,str.Length-i);

2 去掉字符串的前i个字符:

str=str.Remove(0,i); // or str=str.Substring(i);

3 从右边开始取i个字符:

str=str.Substring(str.Length-i); // or str=str.Remove(0,str.Length-i);

4 从右边开始去掉i个字符:

str=str.Substring(0,str.Length-i); // or str=str.Remove(str.Length-i,i);

5 判断字符串中是否有”abc” 有则去掉之

using System.Text.RegularExpressions; string str = “123abc456”; string a=”abc”; Regex r = new Regex(a); Match m = r.Match(str); if (m.Success) { //二选一 str=str.Replace(a,””); Response.Write(str); //或者:string str1,str2; str1=str.Substring(0,m.Index); str2=str.Substring(m.Index+a.Length,str.Length-a.Length-m.Index); Response.Write(str1+str2); }

6 如果字符串中有”abc”则替换成”ABC”

str=str.Replace(“abc”,”ABC”);

7. 根据分隔符截取字符串,strtok()函数。

代码语言:javascript
复制
#include <iostream>
#include <cstring>

using namespace std;

int main()
{
  char sentence[]="This is a sentence with 7 tokens";
  cout<<"The string to be tokenized is:\n"<<sentence<<"\n\nThe tokens are:\n\n";
  char *tokenPtr=strtok(sentence," ");
  while(tokenPtr!=NULL)
  {
      cout<<tokenPtr<<'\n';
      tokenPtr=strtok(NULL," ");//固定写法,可直接记住
  }
  cout<<"After strtok, sentence = "<<sentence<<endl;
  return 0;
}

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/144214.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022年5月2,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档