CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
不看会后悔的Windows XP之经验谈 简单快捷DIY实用家庭影院
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  C/C++ >  C++ 语言

C++中想要从一个字符串中查找含有另一个字符串全体的位置?

楼主xixi96()2005-05-20 22:35:33 在 C/C++ / C++ 语言 提问

想要在c串中找到含有与b串所有元素(字符相同并且排序相同)的第一个位置    
  如:c串为"ab/   ac/   abcdefg/   "  
          b串为"ac/   "  
  用什么函数能够找出"ac/   "在第4个字符 问题点数:20、回复次数:10Top

1 楼sunman1982(冥王星)回复于 2005-05-20 22:47:39 得分 0

用范性算法好了Top

2 楼sunman1982(冥王星)回复于 2005-05-20 22:48:22 得分 0

stl的searchTop

3 楼crek2002(冷冻火焰)回复于 2005-05-20 22:58:01 得分 15

#include<iostream>  
  #include<string>  
   
  using   namespace   std;  
   
  int   main()  
  {  
          string   c("ab/   ac/   abcdefg/");  
          string   b("ac/");  
   
          cout<<c.find(b)<<endl;  
          return   0;  
  }Top

4 楼sunman1982(冥王星)回复于 2005-05-20 22:58:52 得分 3

#include<iostream>  
  #include<algorithm>    
  #include<string>  
   
  using   namespace   std;  
   
  int   main()  
  {  
          string   s1("abacabcdefg"),s2("ac");  
          string::size_type   first_pose=s1.find("ac");//第一个  
          string::size_type   last_pose=s1.rfind("ac");   //最后一个    
          cout<<first_pose<<endl;  
          cout<<last_pose<<endl;    
          system("pause");  
          }Top

5 楼qhfu(改个名字)回复于 2005-05-20 22:59:41 得分 1

用find(string   s,pos);//s为要查找的子串,pos为   开始位置.Top

6 楼yyj1982(一切从头开始,好好学英语)回复于 2005-05-20 23:09:54 得分 0

同意楼上所说的!!!Top

7 楼hoya5121(饿了就喝水)回复于 2005-05-21 13:27:57 得分 0

看看stl的string,好像mfc的CString也有Top

8 楼zdy_8212(zdy_8212)回复于 2005-05-22 06:57:13 得分 1

先想下如果没有函数的情况下的操作吧。一般你可以找这些函数:POS(),SEARCH,   LOCATE,   FINDTop

9 楼chengshiq(Love by heart)回复于 2005-05-22 11:08:42 得分 0

char   *   strstr(const   char   *   str1,   const   char   *   str2);  
  这个函数返回一个指针,指向str1字符串中第一次出现str2字符串的地方。如果在str1中没有找到str2字符串,函数就返回空指针。  
   
  用这个函数就应该可以解决楼主问题吧Top

10 楼xixi96()回复于 2005-05-23 12:45:57 得分 0

回复人:   chengshiq(Love   by   heart)   (   )   信誉:100     2005-05-22   11:08:00     得分:   0      
     
     
        char   *   strstr(const   char   *   str1,   const   char   *   str2);  
  这个函数返回一个指针,指向str1字符串中第一次出现str2字符串的地方。如果在str1中没有找到str2字符串,函数就返回空指针。  
   
  用这个函数就应该可以解决楼主问题吧  
       
     
  楼上说的这个我考虑过,可是他所能查找的是str2的第一个字符,而不是包括整个str2   串的位置,找到的位置是0,而不是4Top

相关问题

  • c# 中怎样模糊查找字符串?
  • C#如何实现在制定字符串中查找一个字符串的位置?
  • 救命!查找字符串!
  • 查找字符串!急!
  • 关于查找字符串
  • 字符串的查找????
  • 字符串查找替换
  • 请问怎么用C实现查找字符文件中的字符串?
  • c++中,string类的find函数可以在一个字符串中查找另一个字符串,c语言中有现成的函数吗?
  • 截取字符串(C#)

关键词

  • 字符
  • 字符串
  • s1
  • 含有
  • ac
  • 位置
  • pose
  • abcdefg
  • 相同
  • ab

得分解答快速导航

  • 帖主:xixi96
  • crek2002
  • sunman1982
  • qhfu
  • zdy_8212

相关链接

  • C/C++ Blog
  • C/C++类图书
  • C/C++类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo