std::strstr
Определено в заголовочном файле <cstring> | ||
|---|---|---|
const char* strstr( const char* haystack, const char* needle ); | ||
char* strstr( char* haystack, const char* needle ); |
Находит первое вхождение байтовой строки needle в байтовой строке, на которую указывает haystack. Завершающие нулевые символы не сравниваются.
Параметры
| haystack | - | указатель на завершаемую нулём байтовую строку для проверки |
| needle | - | указатель на завершаемую нулём байтовую строку для поиска |
Возвращаемое значение
Указатель на первый символ найденной подстроки в haystack, или нулевой указатель, если такой символ не найден. Если needle указывает на пустую строку, возвращается haystack.
Пример
#include <cstring>
#include <iostream>
int main()
{
const char* str = "Try not. Do, or do not. There is no try.";
const char* target = "not";
const char* result = str;
while ((result = std::strstr(result, target)))
{
std::cout << "Found '" << target
<< "' starting at '" << result << "'\n";
// Increment result, otherwise we'll find target at the same location
++result;
}
}Вывод:
Found 'not' starting at 'not. Do, or do not. There is no try.' Found 'not' starting at 'not. There is no try.'
См. также
| находит первое вхождение заданной подстроки (общедоступный член-функция std::basic_string<CharT,Traits,Allocator>) |
|
| находит первое вхождение широкой строки внутри другой широкой строки (функция) |
|
| находит первое вхождение символа (функция) |
|
| находит последнее вхождение символа (функция) |
|
Документация на C для strstr |
|
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/w/cpp/string/byte/strstr