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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Galphimbl
22 / 22 / 3
Регистрация: 13.01.2013
Сообщений: 125
#1

Проверка наличия слова в тексте - C++

05.04.2014, 19:56. Просмотров 526. Ответов 7
Метки нет (Все метки)

на javascript есть вот такой простой способ проверки
Javascript
1
2
/Hello/.test('Hello World'); // true
/Hi/.test('Hello World'); //false
есть ли что то подобное в C++ ?
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
05.04.2014, 19:56
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Проверка наличия слова в тексте (C++):

Проверка наличия файла - C++
Такая ситуация: есть файл с определённым именем void StarSystem::load(string inputName) { stringstream ss; ss.str(""); ...

Проверка наличия соединения с интернет, VC++ - C++
Здравствуйте. 1.Подскажите пожалуйста, как я могу проверить, подключен ли компьютер к интернет, и отследить состояние подключения (Т.е....

Проверка наличия символов в строке - C++
Задача состоит в том чтобы проверить встречаются ли нужные нам символы в строке, я попробовал сделать ф-цию поиска и четыре раза прогнать...

Проверка наличия файлов в директории - C++
Всем привет. Возникли сложности, помогите, пожалуйста) Необходимо добавить код в приложение, который при запуске проверял бы наличие...

Проверка наличия определенных цифр в числе - C++
int n,kn = 0,kc = 0,a,b; cout<<"Введите натуральное число:"; cin >>n; cout <<"Введите A:"; cin >>a; cout <<"Введите...

В тексте слова, стоящие на четных местах, переписать задом наперед. В тексте несколько строк. - C++
Задание: освоить обработку строк и работу с файлами средствами языка Си. Исходный текст должен содержаться в одном файле, результат — во...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Izual
94 / 119 / 6
Регистрация: 13.11.2012
Сообщений: 1,551
06.04.2014, 00:37 #2
Функции типа strcmp, хотя она проверят не на наличие, а на сходимость с данным, а на наличие будет strncmp с собственным алгоритмом перебора i-ого.
0
BlackSpace
137 / 130 / 52
Регистрация: 15.03.2014
Сообщений: 277
06.04.2014, 00:55 #3
Есть как минимум 6 вариантов поиска для типа string.
Наиболее простой s.find( args ) - ищет первое положение аргумента args в строке s.
http://www.cplusplus.com/reference/string/string/find/

Более подробно о поиске для типа string рекомендую прочесть в книге автора Стенли Липпман
"Язык программирования C++. Вводный курс." 4-е издание, 2007, глава 9.6.4 - Операции поиска строк.

Если для строк в стиле си, то можно использовать strstr()

Цитата Сообщение от Izual Посмотреть сообщение
а на наличие будет strncmp с собственным алгоритмом перебора i-ого.

Явно не лучший вариант.
1
Izual
94 / 119 / 6
Регистрация: 13.11.2012
Сообщений: 1,551
06.04.2014, 01:01 #4
Цитата Сообщение от BlackSpace Посмотреть сообщение
Явно не лучший вариант.
Чем не лучший? Мозг видимо развивать уже не "МОДНО"?!
0
BlackSpace
137 / 130 / 52
Регистрация: 15.03.2014
Сообщений: 277
06.04.2014, 01:24 #5
Izual, интеллект развивать необходимо, спору нет.
Также как и программисту необходимо расширять свои знания о готовом функционале изучаемого языка и его библиотек.
Советовать человеку писать некую самоделку для поиска подстроки в строке при наличии готовых средств - это не лучший вариант.

Применять Ваш вариант, на мой взгляд, можно только в нескольких случаях
- очень интересно написать самому
- запрещено ( кем-то ) использовать готовый функционал для поиска строк
- нечего делать

Моя позиция такая.

Не по теме:

Цитата Сообщение от Izual Посмотреть сообщение
Чем не лучший? Мозг видимо развивать уже не "МОДНО"?!
А вот скажите, зачем Вы советовали использование strncmp()? Это ведь готовая функция, "мозг не развивает". Вы так не думаете? Посоветуйте автору темы сравнивать посимвольно, что-то вроде такого
C++
1
2
3
... // тут верхняя часть собственного алгоритма перебора
if ( str[ i ]  == substr[ j ] )
... // а тут нижняя

0
Izual
94 / 119 / 6
Регистрация: 13.11.2012
Сообщений: 1,551
06.04.2014, 01:48 #6
Цитата Сообщение от BlackSpace Посмотреть сообщение
Это ведь готовая функция
Можно, но это уже изврат. Суть того что человек должен уметь делать что то сам, без шаблонов. Использовать правильно функцию strncmp тоже исскуство. Кстати подумал тут, а функция эта если первый символ не совпадает сразу return 0 делает? - если так, то очень хорошо, если нет - то можно по первому символу сравнивать, ежели не совпадает, то сразу переходить дальше.
Шаблоны как догмы - затягивают, а потом просто становишся тупым и фанатичным. Примеров даже тут на форуме масса, большинство как то мыслят "странно", не логично - потому что практики алгоритмической нет(потому что шаблоны юзают). А взять php программеров - так там вообще тьма, их и программистами то не назовёш, потому что большинство только и умеет что кнопочками выбирать нужный скрипт)))
0
Galphimbl
22 / 22 / 3
Регистрация: 13.01.2013
Сообщений: 125
07.04.2014, 16:30  [ТС] #7
BlackSpace, спасибо, ваш совет очень помог
Izual, если вдруг мне захочется острых ощущений, я буду знать к кому обратиться
а вообще спасибо что не обошли стороной и помогли
0
Izual
07.04.2014, 16:49     Проверка наличия слова в тексте
  #8

Не по теме:

Цитата Сообщение от Galphimbl Посмотреть сообщение
вдруг мне захочется острых ощущений

0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
07.04.2014, 16:49
Привет! Вот еще темы с ответами:

Определить самое длинное слово в тексте. Считать, что слова в тексте отделены друг от друга одним пробелом - C++
Определить самое длинное слово в тексте. Считать, что слова в тексте отделены друг от друга одним пробелом.

Проверка наличия двух пар среди выданных игроку карт - C++
Можно ли оптимизировать алгоритм этой функции? У меня извечная проблема... когда я напишу функцию или часть кода в программе и он...

В тексте слова разделены запятыми,напечатать все слова в алфавитном порядке. - C++
Написал программу, она не запускаеться, я понимаю что чтото не так, но что незнаю. В чём я ошибся? Вот само задание: Дана строка ...

Найти слова в заданном тексте, состоящие из цифр и сумму чисел, которые образуют эти слова - C++
Помогите разобраться пожалуйста: 1. Дан текст. Найти слова, состоящие из цифр и сумму чисел, которые образуют эти слова. 2....


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
07.04.2014, 16:49
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru