string的查找问题

zerray 2003-05-18 06:40:45
如何判断一个string是另一个string的子串,且不区分大小写?
...全文
30 点赞 收藏 7
写回复
7 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
yifenggd 2003-05-19
不就一个KMP算法吗,一般数据结构书上都有的.
回复
whtwuhaitao 2003-05-19
其实就是调用string类函数把2边都转换成大写或小写,然后不就可以比较了
回复
fangrk 2003-05-19
#include <iostream>
#include <string>
#include <algorithm>
using namespace std;
bool equal_nocase(char ch1,char ch2){return toupper(ch1)==toupper(ch2);}
int main()
{
const string str1("I Love This Game!"),str2("VE th");
string::const_iterator P=
search(str1.begin(),str1.end(),str2.begin(),str2.end(),
equal_nocase);
if(P!=str1.end()){cout<<"Find at index of "<<P-str1.begin()+1;}
else{cout<<"Failed!";}
}
回复
bigtea 2003-05-18
应该是没有的
回复
zerray 2003-05-18
没有能直接用的库函数吗?
回复
snipersu 2003-05-18
先把两个string都复制了,在都转换成大小写一样的string,然后求是子窜否.
回复
晨星 2003-05-18
不知道,实在不行就自己写一个吧。反正也不难。
回复
相关推荐
发帖
工具平台和程序库
创建于2007-09-28

2.4w+

社区成员

C/C++ 工具平台和程序库
申请成为版主
帖子事件
创建了帖子
2003-05-18 06:40
社区公告
暂无公告