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

поиск слова в строке - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 10, средняя оценка - 4.70
erioik
1 / 1 / 0
Регистрация: 22.10.2010
Сообщений: 26
12.12.2010, 17:57     поиск слова в строке #1
нужно написать свою ф-цию, которая проверяет, есть ли какое-то слово в строке! возвращает позицию слова, ести оно есть!
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.12.2010, 17:57     поиск слова в строке
Посмотрите здесь:

поиск слова в строке C++
C++ поиск слова в строке
C++ Поиск слова в строке
C++ C++ поиск слова в строке, игнорируя остальные
Поиск слова в массиве символов (строке) C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
3a4em
11 / 11 / 1
Регистрация: 05.12.2010
Сообщений: 26
12.12.2010, 19:40     поиск слова в строке #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <iostream>
#include <string>
using namespace std;
int func (string s, string c);
void main()
{   
    string str, clov;
    cout << "BBedite ctroky : ";
    getline (cin,str);
    cout << "BBedite clovo : ";
    cin.sync();
    getline (cin,clov);
    int pos = func(str,clov);
    cout << "POS CLOVA = "<< pos + 1 << endl;
}
int func (string s, string c)
{
    int pos = s.find(c,0);
    return pos;
}
erioik
1 / 1 / 0
Регистрация: 22.10.2010
Сообщений: 26
14.12.2010, 00:52  [ТС]     поиск слова в строке #3
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
int poisk(char *str,char *slovo, int pos, int n)                //поиск слова в строке
{
    int i=0;
    while (str[i])
    {
        int k=0;
        char str1[100];
        while (str[i]!=' ' || str[i])  //здесь разбиваю на слова строку и записываю его в строку str1                   (ссука цыклит)
        {
            str1[k]=str[i];
            i++; k++;
        }
        int z=0;
        if (k==n && str1[0]==str[0])     //проверяю, является ли слово из str1 искомым словом
            for (int j=0; slovo[j]; j++)
                if (slovo[j]==str1[j]) z++;
        
    }
            if (z==n) return (i-n);
            else return -1;
 
}
возможно ф-ция не правильная!
MILAN
 Аватар для MILAN
883 / 777 / 86
Регистрация: 21.02.2009
Сообщений: 1,722
14.12.2010, 01:03     поиск слова в строке #4
erioik, зачем разбивать строку на слова вручную, если для етого существует функция strtok!!!!
erioik
1 / 1 / 0
Регистрация: 22.10.2010
Сообщений: 26
14.12.2010, 01:10  [ТС]     поиск слова в строке #5
вот в этом сцука и весь прикол, что нужно написать свою ф-цию, не используя ниодной стандартной!) такая сцука лаба!)
-=SusliK=-
Заблокирован
16.12.2010, 20:22     поиск слова в строке #6
Цитата Сообщение от MILAN Посмотреть сообщение
erioik, зачем разбивать строку на слова вручную, если для етого существует функция strtok!!!!
не подскажете как действует эта функция, выходное значение какое у нее?
asics
Freelance
Эксперт C++
 Аватар для asics
2838 / 1775 / 144
Регистрация: 09.09.2010
Сообщений: 3,842
16.12.2010, 20:27     поиск слова в строке #7
-=SusliK=-, Прототип функции - char *strtok(char *str1, const char *str2);
Функция возврощает указатель на следующую лексему в строке str1.
str2 - это разделитили, определяющие лексему.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
16.12.2010, 20:37     поиск слова в строке
Еще ссылки по теме:

поиск слова в строке C++
Поиск слова в строке C++
Поиск слова в строке C++

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

Или воспользуйтесь поиском по форуму:
-=SusliK=-
Заблокирован
16.12.2010, 20:37     поиск слова в строке #8
а как ее можно использовать для поиска слова в строке?
Yandex
Объявления
16.12.2010, 20:37     поиск слова в строке
Ответ Создать тему
Опции темы

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