检查C ++中的子字符串

时间:2014-03-24 15:29:32

标签: c++ string pointers character

这是我需要构建到现有库中的一些附加功能。我试图检查字符串是否包含子字符串。我有指向主字符串的开头和结尾的指针(它是一个更大的字符串的子字符串),而要搜索的字是String数据类型。

char * start;
char * end;
String wordtosearchfor

我在C ++中读到了关于find的内容,但我无法弄清楚如何使用指针输入。是否有内置函数与此表单中的输入一起使用?或者从头到尾读取一个可以与find一起使用的新String?

是否有效

谢谢!

1 个答案:

答案 0 :(得分:0)

首先,您确实可以使用类std :: string的成员函数find。例如

char * start;
char * end;
std::string wordtosearch;

// setting values for variables

std::string::size_type n = wordtosearch.find( start, 0, end - start );

标题std::search中声明了标准算法<algorithm> 例如

char * start;
char * end;
std::string wordtosearch;

// setting values for variables

std::string::iterator it = std::search( wordtosearch.begin(), wordtosearch.end(), 
                                        start, end );

在这些例子中,我认为终点是在seached substring的最后一个字符之后。