Модераторы: Partizan, gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Определение кол-ва вхождений слова в строку, с учетом регистра и без учёта регистра 
:(
    Опции темы
sergey_85
Дата 31.5.2007, 15:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 445
Регистрация: 17.4.2007
Где: Россия, Челябинск

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



Нужно определить кол-во вхождений слова в строку с учетом/без учета регистра


--------------------
A good design always pays off.
PM MAIL   Вверх
Gelis
Дата 31.5.2007, 17:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Код

        public static int CountIn(string str, string substring, bool IsUpper)
        {
            if (IsUpper)
            {
                str = str.ToUpper();
                substring = substring.ToUpper();
            }
            int start=0;
            int result=0, vspom;
            while((vspom=str.IndexOf(substring,start))!=-1)
            {
                start=vspom+1;
                result++;
            }
            return result;
        }


Это сообщение отредактировал(а) Gelis - 31.5.2007, 18:02
PM MAIL   Вверх
SpaceSpace
Дата 1.6.2007, 08:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Можно так:
используешь регулярное выражения(суть есть автомат, машина тьюринга)

К стати очень сильное средство, при правильном использовании
берет на себя очень много головной боли
подключаешь это пространство
Код

using System.Text.RegularExpressions;

Код

            // это твоё вхождение
            string slovo = "gg";
            // это текст, где нудно подсчитать голичество вхождений 
            // как видишь, gg встречается 2 раза
            string text = "gvehjbw;ggljebw;lkgfggh";
            //  создаем новое регулярное выражение
            Regex reg = new Regex(slovo);
            // Массив совпадений с выражением
            MatchCollection mc = reg.Matches(text);
            // это твое икомое количество совпадений
            int c = mc.Count;


Если есть вопросы - спрашивай, помогем, чем могем


--------------------
Репутация - самое ценное, что есть у человека. Зарабатывают годы, теряют за мгновение.
70-565
MCPD Enterprise 3.5 
PM MAIL   Вверх
Mymik
Дата 1.6.2007, 10:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1474
Регистрация: 12.5.2006
Где: Lamer-центер

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



SpaceSpace, можно чуть-чуть быстрее. Поскольку в Regex есть статический метод Matches
Код

System.Text.RegularExpressions.Regex.Matches("где ищим", "что ищим", System.Text.RegularExpressions.RegexOptions.IgnoreCase).Count;

Третий параметр это флажек. Думаю разберешься для чего он нужен



--------------------
ICQ ::            857-857
E-mail ::         mymik[at]inbox[dot]ru 
HomaPage ::  http://localhost/

:to_become_senile  :this
PM MAIL WWW ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
mr.DUDA
THandle

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.
Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :)
Так же не забывайте отмечать свой вопрос решенным, если он таковым является :)


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

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


 




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


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

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