Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Как подсчитать кол-во букв без пробелов в текте? 
:(
    Опции темы
ruslandlion
Дата 26.5.2008, 17:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 115
Регистрация: 12.8.2006

Репутация: нет
Всего: нет



Уважаемые программисты.Помогите пожалуйста с кодом.
Код

AnsiString s=RichEdit1->Text;

Никак не могу сделать так чтобы в тексте компонента RichEdit набранный текст считал введённое количество букв без пробелов.А потом выдавал сообщение о том сколько букв в тексте.Заранее спас ибо. 

PM MAIL   Вверх
fish9370
Дата 26.5.2008, 17:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 663
Регистрация: 15.4.2007
Где: Москва

Репутация: 1
Всего: 1



Цитата(ruslandlion @ 26.5.2008,  17:11)
Уважаемые программисты.Помогите пожалуйста с кодом.
Код

AnsiString s=RichEdit1->Text;

Никак не могу сделать так чтобы в тексте компонента RichEdit набранный текст считал введённое количество букв без пробелов.А потом выдавал сообщение о том сколько букв в тексте.Заранее спас ибо.

а почему нельзя по простому?

Код

bool isMagic(char C)
{
        return C == ' '; //всевозможные волшебные символы
}

char  szBuf[] = "текст содержащий пробелы, в кодировке ASCII";

int main()
{
           int nLen = 0;
           for(int i=0; i < strlen(szBuf) ; i++)
                      if(!isMagic(szBuf[i]))
                                 ++nLen;
}



--------------------
undefined
PM MAIL WWW ICQ   Вверх
Rififi
Дата 26.5.2008, 18:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1254
Регистрация: 9.3.2008

Репутация: 1
Всего: 36



Цитата(ruslandlion @  26.5.2008,  17:11 Найти цитируемый пост)
Никак не могу сделать так чтобы в тексте компонента RichEdit набранный текст считал введённое количество букв без пробелов

используй собственную функцию для подсчёта

Код
#include <algorithm>
#include <functional>
#include <iterator>
#include <ctype.h>
#include <wchar.h>

template <class _InIt, class _Pr>
inline typename std::iterator_traits<_InIt>::difference_type
count_chars_if(_InIt _First, _Pr _Pred)
{
    typename std::iterator_traits<_InIt>::difference_type cnt = 0;
    for ( ; *_First; ++_First)
        if (_Pred(*_First))
            cnt++;
    return (cnt);
}

template <typename T>
struct spaces : public std::unary_function<T, bool>
{
    result_type operator()(const argument_type ch) const;
};

template <>
inline spaces<char>::result_type spaces<char>::operator ()(const argument_type ch) const
{ return isspace(ch) != 0; }

template <>
inline spaces<wchar_t>::result_type spaces<wchar_t>::operator ()(const argument_type ch) const
{ return iswspace(ch) != 0; }

template <typename T>
inline size_t length_without_spaces(const T* s)
{
    return count_chars_if(s, std::not1(spaces<T>()));
}


size_t n = length_without_spaces("...");
n = length_without_spaces(L"...");


Это сообщение отредактировал(а) Rififi - 26.5.2008, 18:06
PM MAIL   Вверх
mrbrooks
Дата 26.5.2008, 18:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


трололомен
****


Профиль
Группа: Завсегдатай
Сообщений: 4259
Регистрация: 4.10.2006
Где: Дол Гулдур

Репутация: 167
Всего: 306



Rififi мощно имхо smile 

мой вариант
Код

ShowMessage(StringReplace(redt1->Text," ","",TReplaceFlags()<<rfReplaceAll).Length());


Это сообщение отредактировал(а) mrbrooks - 26.5.2008, 18:49
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++ Builder"
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по С++ Builder обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Настоятельно рекомендуем заглянуть в DRKB (Delphi Russian Knowledge Base) - крупнейший в рунете сборник материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Rrader.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C++ Builder | Следующая тема »


 




[ Время генерации скрипта: 0.0451 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.