Форум программистов, компьютерный форум CyberForum.ru

Строки(функция поиска подстроки) - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 8, средняя оценка - 4.88
Федя Форточкин
 Аватар для Федя Форточкин
66 / 80 / 16
Регистрация: 09.12.2012
Сообщений: 222
Записей в блоге: 3
18.02.2013, 19:39     Строки(функция поиска подстроки) #1
есть ли какая-то функция типо функции в delphi AnsiContainsStr, просто надо узнать содержит ли какая-то строка подстроку.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Croessmah
Модератор
Эксперт С++
 Аватар для Croessmah
11822 / 6801 / 769
Регистрация: 27.09.2012
Сообщений: 16,869
Записей в блоге: 2
Завершенные тесты: 1
18.02.2013, 19:48     Строки(функция поиска подстроки) #2
Если под строкой имеется ввиду массив char'ов, то
C++
1
2
3
4
5
6
#include <iostream>
#include <cstring>
int main(){
    std::cout<<(strstr("My string","tri")?"Yes":"No")<<std::endl;
    return 0;
}
Поночка
4 / 4 / 0
Регистрация: 04.10.2009
Сообщений: 22
18.02.2013, 19:48     Строки(функция поиска подстроки) #3
char * strstr(const char *s1, const char *s2) ;
Находит позицию первого вхождения строки s2 в строку s1. Если подстрока найдена, функция возвращает указатель подстроки в строке s1, иначе возвращается NULL.

взято с http://life-prog.ru/view_zam.php?id=180&cat=2&page=2
Федя Форточкин
 Аватар для Федя Форточкин
66 / 80 / 16
Регистрация: 09.12.2012
Сообщений: 222
Записей в блоге: 3
18.02.2013, 20:05  [ТС]     Строки(функция поиска подстроки) #4
Поночка, нет, просто строка, например
C++
1
2
3
4
5
string b = "Hello World";
string a = "World";
if (b->Contains(a) {
//делать что-то
}
возможно что-то вроде этого, в правильности кода не уверен
BumerangSP
 Аватар для BumerangSP
4283 / 1405 / 121
Регистрация: 16.12.2010
Сообщений: 2,941
Записей в блоге: 3
18.02.2013, 20:09     Строки(функция поиска подстроки) #5
Для string:
C++
1
2
std::string str("This string contains substring");
std::cout<<str.find("ntain");
Возвращает позицию.

Добавлено через 2 минуты
C++
1
2
 if (str.find("ntain")<str.size())
       std::cout<<"Yes";
Федя Форточкин
 Аватар для Федя Форточкин
66 / 80 / 16
Регистрация: 09.12.2012
Сообщений: 222
Записей в блоге: 3
18.02.2013, 20:13  [ТС]     Строки(функция поиска подстроки) #6
BumerangSP, спасибо, подействовало
Yandex
Объявления
18.02.2013, 20:13     Строки(функция поиска подстроки)
Ответ Создать тему
Опции темы

Текущее время: 21:03. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru