Форум программистов, компьютерный форум, киберфорум
Visual C++
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.62/26: Рейтинг темы: голосов - 26, средняя оценка - 4.62
 Аватар для dmmax
0 / 0 / 0
Регистрация: 24.09.2012
Сообщений: 81

Удалить из строки слова, содержащие цифры

17.02.2013, 21:22. Показов 5627. Ответов 35
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
[MFC] Помогите пожалуйста кто-нибудь, как разделять массив строк, используя CString, очень прошу помощи Через консоль подобное давно бы сделал
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
17.02.2013, 21:22
Ответы с готовыми решениями:

Дана строка, удалить слова содержащие цифры
что то не работает она у меня, помогите. #include <string.h> #include <ctype.h> #include <iostream.h> #define DELIM "...

Поместить в начало строки слова, содержащие только цифры, а затем – все остальные слова
Строка состоит из слов, разделенных ровно одним пробелом, пробелов перед первым и после последнего слова нет. Поместить в начало строки...

Удалить из строки слова, содержащие четное кол-во символов. Слова в строке разделены одним или несколькими пробелами. По
Удалить из строки слова, содержащие четное кол-во символов. Слова в строке разделены одним или несколькими пробелами. Помогите...

35
3176 / 1935 / 312
Регистрация: 27.08.2010
Сообщений: 5,131
Записей в блоге: 1
27.02.2013, 18:09
Студворк — интернет-сервис помощи студентам
у меня VS 2012
Ну, понятно. Для такой работы меньше никак :-)

Если верить http://msdn.microsoft.com/en-u... 10%29.aspx, то там только один параметр:

C++
1
int FindOneOf(PCXSTR pszCharSet) const throw();
Возможно, конверсию надо указать принудительно вот так: (PCXSTR)"1234567890", а если не поможет, то так:

C++
1
CString sDigits = _T("1234567890"); FindOneOf((PCXSTR)sDigits)
Если и так не получится, скопируйте код и сообщение об ошибке сюда, может оно вообще не о том.
0
 Аватар для dmmax
0 / 0 / 0
Регистрация: 24.09.2012
Сообщений: 81
27.02.2013, 18:58  [ТС]
ошибка: d:\проекты\2 cеместр\mfc(9)laba\mfc(9)laba\maindlg.cp p(249): error C2664: ATL::CStringT<BaseType,StringTraits>::Fi ndOneOf: невозможно преобразовать параметр 1 из "const char [11]" в "const wchar_t *"
1> with
1> [
1> BaseType=wchar_t,
1> StringTraits=StrTraitMFC<wchar_t>
1> ]
1> Типы, на которые указывают указатели, не связаны; для преобразования требуется reinterpret_cast, приведение в стиле С или приведение в стиле функции

По твоему пробывал, не получается..
0
3176 / 1935 / 312
Регистрация: 27.08.2010
Сообщений: 5,131
Записей в блоге: 1
27.02.2013, 19:22
А вот так: (PCXSTR)L"1234567890" ?
0
 Аватар для dmmax
0 / 0 / 0
Регистрация: 24.09.2012
Сообщений: 81
27.02.2013, 19:33  [ТС]
gazlan, 1>d:\проекты\2 cеместр\mfc(9)laba\mfc(9)laba\maindlg.cp p(249): error C3861: PCXSTR: идентификатор не найден
код:
C++
1
FindOneOf(PCXSTR(L"1234567890"))
0
3176 / 1935 / 312
Регистрация: 27.08.2010
Сообщений: 5,131
Записей в блоге: 1
27.02.2013, 19:47
Скобки не так поставлены: FindOneOf((PCXSTR)L"1234567890")

Или, напрямую: FindOneOf((wchar_t*)(L"1234567890"))
0
 Аватар для dmmax
0 / 0 / 0
Регистрация: 24.09.2012
Сообщений: 81
27.02.2013, 19:56  [ТС]
gazlan, ошибки больше не выдает, но не работает
0
3176 / 1935 / 312
Регистрация: 27.08.2010
Сообщений: 5,131
Записей в блоге: 1
27.02.2013, 20:01
Ну, VC 2012 я ставить все равно не стану. Что означает "не работает"? Отладчиком умеем пользоваться? Если нет, вставляем отладочную печать (вывод на консоль) в сомнительных местах и смотрим.

И, да, брось мне на почту (gazlan@yandex.ru) весь проект - если малой кровью под 6-кой запустится, посмотрю у себя.
0
 Аватар для dmmax
0 / 0 / 0
Регистрация: 24.09.2012
Сообщений: 81
27.02.2013, 20:07  [ТС]
78 мб вешает, нигде не отправляется Скажи свой skype\vk, там кину

ht_tps://docviewer.yandex.ru/?c=512e301e29b6&url=ya-disk%3A%2F%2F%2Fdisk%2FMFC(9)laba.rar&na me=MFC(9)laba.rar

попробуй скачать
0
3176 / 1935 / 312
Регистрация: 27.08.2010
Сообщений: 5,131
Записей в блоге: 1
27.02.2013, 20:17
Файл не найден
Залей на нормальный обменник, сюда, например: _http://www.multiupload.nl
0
 Аватар для dmmax
0 / 0 / 0
Регистрация: 24.09.2012
Сообщений: 81
27.02.2013, 20:24  [ТС]
gazlan, не умею туда заливать. Слей от туда, норм обменник же. или skype:dmmax24
там могу скинуть...
0
3176 / 1935 / 312
Регистрация: 27.08.2010
Сообщений: 5,131
Записей в блоге: 1
27.02.2013, 20:42
Когда это на яндексе было что-нибудь "нормальное"? Нет там твоего файла. Попробуй переименовать во что-нибудь попроще и по-английски, типа: aaa.rar, может тогда найдет. Или, на худой конец, на _http://www.rghost.ru пробуй залить. И пиши либо на почту, либо в личку - к C++ все это отношения уже давно не имеет.
0
 Аватар для dmmax
0 / 0 / 0
Регистрация: 24.09.2012
Сообщений: 81
27.02.2013, 21:30  [ТС]
опа
Вложения
Тип файла: rar MFC.rar (5.1 Кб, 7 просмотров)
0
3176 / 1935 / 312
Регистрация: 27.08.2010
Сообщений: 5,131
Записей в блоге: 1
27.02.2013, 21:42
А почему IN-текст в Unicode?
0
 Аватар для dmmax
0 / 0 / 0
Регистрация: 24.09.2012
Сообщений: 81
27.02.2013, 21:43  [ТС]
gazlan, ну я с Unicode как бы работаю
0
3176 / 1935 / 312
Регистрация: 27.08.2010
Сообщений: 5,131
Записей в блоге: 1
27.02.2013, 21:53
А Tokenize()?

Я у себя такое проверить не могу (и unicode не использую).

Расставьте отладочную печать, раз уж так хочется извращений, больше ничем помочь не могу.
1
 Аватар для dmmax
0 / 0 / 0
Регистрация: 24.09.2012
Сообщений: 81
28.02.2013, 17:55  [ТС]
gazlan, ладно...спасибо буду разбираться сам плохо использую откладку не доходит иногда, что и как делаю.

Добавлено через 20 часов 0 минут
Кому интересно, вот код, который удаляет слова с цифрами из строки(MFC):

Кликните здесь для просмотра всего текста
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
bool CMainDlg::ProcessFiles(CString sFileIn, CString sFileOut)
{
    CFile fileIn;
            
    CString str;
    CString sMsg;  
    CString FileRead[256];
    CString rezult = L"";
    CString numbers = L"0123456789";
 
    if(!fileIn.Open(sFileIn, CFile::modeRead))
    {
        sMsg.Format(L"Не могу открыть файл %s", sFileIn);
        MessageBox(sMsg, L"Ошибка", MB_OK | MB_ICONERROR);
        return false;
    }
    else
    {
        fileIn.Seek(2, CFile::begin);
 
        ULONGLONG size = fileIn.GetLength();
        if (!fileIn.Read(str.GetBufferSetLength((size - 2) / 2), size - 2))
        {
            MessageBox(L"Ошибка чтения строки из файла.", L"Ошибка", MB_OK | MB_ICONSTOP);
            return false;
        }
        str.ReleaseBuffer();
 
        int start(0);
        CString word = str.Tokenize(L" ", start);
 
        while(!word.IsEmpty())
        {
            TRACE(L"%s ", str);
            word = str.Tokenize(L" ", start);
 
            int len = word.GetLength();
            BOOL flag = TRUE;
 
            for (int i = 0; i < len; ++i)
            {
 
            for (int j = 0; j < 10; ++j)
            {
                if (numbers[j] == word[i])
                {
                    flag = FALSE;
                    break;
                }
            }
            }   
            if (flag)
                rezult += word + L" ";
        }
        TRACE(L"\n");
    }
 
    CStdioFile fileOut;
 
    if(!fileOut.Open(sFileOut, CFile::modeWrite | CFile::modeCreate))
    {
        sMsg.Format(L"Не могу открыть файл результата %s", sFileOut);
        MessageBox(sMsg, L"Ошибка", MB_OK | MB_ICONERROR);
        return false;
    } 
    else
    {
        fileOut.WriteString(rezult);
    }
    return true;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
28.02.2013, 17:55
Помогаю со студенческими работами здесь

Удалить из введеной с клавиатуры строки слова, содержащие менее 2-х символов 'а'
Помогите, пожалуйста, написать программу.. Удалить из введеной с клавиатуры строки слова, содержащие менее 2-х символов 'а'.

Строки (из заданной последовательности слов удалить слова, содержащие числа) )
Из заданной последовательности слов удалить слова, содержащие числа.

Удалить из строки все слова, начинающиеся с цифры
Дана строка символов, состоящая из слов, слова разделены между собой пробелами. - удалить из строки все слова, начинающиеся с цифры. ...

Удалить из введенной с клавиатуры строки первые 2 слова, если это цифры
Написать программу, которая удаляет из введенной с клавиатуры строки первые 2 слова если это цифры.

Удалить из введенной с клавиатуры строки первые 2 слова, если это цифры
Помогите написать программу, которая удаляет из введенной с клавиатуры строки первые 2 слова если это цифры.


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

Или воспользуйтесь поиском по форуму:
36
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru