Форум программистов
 
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.
Внимание! Некоторое время письма не доходят до аккаунтов MAIL RU GROUP, не доходят на все почтовые ящики mail.ru, inbox.ru, bk.ru. Пишите им жалобы, чтобы быстрее восстановили получение писем, регистрируйтесь через яндекс почту и gmail, туда письма с активизацией доходят.

Вернуться   Форум программистов > .NET > Windows Forms
Регистрация

Восстановить пароль
Повторная активизация e-mail

Ответ
 
Опции темы
Старый 01.11.2017, 20:44   #1
RaccoonYalta
Пользователь
 
Регистрация: 27.11.2016
Сообщений: 23
Репутация: 45
По умолчанию берем строку из txt

Добрый день, столкнулся с такой проблемой
вот сам код
Код:

            Regex reg = new Regex(textBox1.Text + "\\b.+", RegexOptions.IgnoreCase);
MatchCollection math = reg.Matches(File.ReadAllText("itemname.txt"));

            if (math.Count > 0 & textBox1.Text.Length != 0)
            {
                label189.Text = math[0].ToString().Replace(textBox1.Text, "");
            }
            else
            {
                label189.Text = "none";

            }

если у меня стоят там 2 значения
611 меч
11 лук
при воде значения в textBox1- 11 то он мне выдает меч
как поправить что бы он выбирал целые значения ?

______________________
Используйте тег [CODE] (кнопка с решеткой # в форме сообщения) при вставке кода на форум.

Последний раз редактировалось Alex11223; 01.11.2017 в 20:46.
RaccoonYalta вне форума   Ответить с цитированием
Старый 01.11.2017, 20:47   #2
Alex11223
Модератор
Заслуженный модератор
 
Регистрация: 12.01.2011
Сообщений: 17,401
Репутация: 3353

icq: 512-765
skype: alexp.frl
По умолчанию

Цитата:
Сообщение от RaccoonYalta Посмотреть сообщение
label189
Вы там не путаетесь еще в них?)
Alex11223 вне форума   Ответить с цитированием
Старый 01.11.2017, 20:49   #3
RaccoonYalta
Пользователь
 
Регистрация: 27.11.2016
Сообщений: 23
Репутация: 45
По умолчанию

еще нет )
Цитата:
Сообщение от Alex11223 Посмотреть сообщение
Вы там не путаетесь еще в них?)
)
RaccoonYalta вне форума   Ответить с цитированием
Старый 01.11.2017, 21:39   #4
pu4koff
ПрофессионалФорумчанин
 
Аватар для pu4koff
 
Регистрация: 22.05.2007
Сообщений: 9,458
Репутация: 3616
По умолчанию

Код:

Regex reg = new Regex("\\b" + textBox1.Text + "\\b.+", RegexOptions.IgnoreCase);

__________________
http://coub.com/view/2hhtg
pu4koff вне форума   Ответить с цитированием
Старый 01.11.2017, 21:43   #5
RaccoonYalta
Пользователь
 
Регистрация: 27.11.2016
Сообщений: 23
Репутация: 45
По умолчанию

Цитата:
Сообщение от pu4koff Посмотреть сообщение
Код:

Regex reg = new Regex("\\b" + textBox1.Text + "\\b.+", RegexOptions.IgnoreCase);

спасибо большое, помогло
RaccoonYalta вне форума   Ответить с цитированием
Старый 01.11.2017, 21:54   #6
RaccoonYalta
Пользователь
 
Регистрация: 27.11.2016
Сообщений: 23
Репутация: 45
По умолчанию

Цитата:
Сообщение от pu4koff Посмотреть сообщение
Код:

Regex reg = new Regex("\\b" + textBox1.Text + "\\b.+", RegexOptions.IgnoreCase);

еще такой вопрос если он не чего не находит то в лабел пустота, как можно ее заменить например на none
RaccoonYalta вне форума   Ответить с цитированием
Старый 01.11.2017, 21:59   #7
pu4koff
ПрофессионалФорумчанин
 
Аватар для pu4koff
 
Регистрация: 22.05.2007
Сообщений: 9,458
Репутация: 3616
По умолчанию

там в условии ошибка. Нужно не &, а &&.
__________________
http://coub.com/view/2hhtg
pu4koff вне форума   Ответить с цитированием
Старый 01.11.2017, 22:03   #8
RaccoonYalta
Пользователь
 
Регистрация: 27.11.2016
Сообщений: 23
Репутация: 45
По умолчанию

Цитата:
Сообщение от pu4koff Посмотреть сообщение
там в условии ошибка. Нужно не &, а &&.
исправил но лабел все ровно пустой если не находит условие

Последний раз редактировалось RaccoonYalta; 01.11.2017 в 22:09.
RaccoonYalta вне форума   Ответить с цитированием
Старый 01.11.2017, 22:22   #9
pu4koff
ПрофессионалФорумчанин
 
Аватар для pu4koff
 
Регистрация: 22.05.2007
Сообщений: 9,458
Репутация: 3616
По умолчанию

Код:

var s = Regex.Match(File.ReadAllText("itemname.txt"), $"\\b{textBox1.Text}\\b\\s*(?<word>\\S+)", RegexOptions.IgnoreCase).Groups["word"].Value;
if (string.IsNullOrEmpty(s)) s = "none";
label189.Text = s;

__________________
http://coub.com/view/2hhtg
pu4koff вне форума   Ответить с цитированием
Старый 01.11.2017, 22:52   #10
RaccoonYalta
Пользователь
 
Регистрация: 27.11.2016
Сообщений: 23
Репутация: 45
По умолчанию

Цитата:
Сообщение от pu4koff Посмотреть сообщение
Код:

var s = Regex.Match(File.ReadAllText("itemname.txt"), $"\\b{textBox1.Text}\\b\\s*(?<word>\\S+)", RegexOptions.IgnoreCase).Groups["word"].Value;
if (string.IsNullOrEmpty(s)) s = "none";
label189.Text = s;

не получается выводит левые число какие то вместо none
RaccoonYalta вне форума   Ответить с цитированием
Ответ

Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как объединить в одну строку данные в txt файле valerij Microsoft Office Excel 7 26.10.2014 23:04
Перевод на новую строку (txt) StamSvam C++ Builder 1 12.07.2012 21:27
Как можна удальть строку из listView, которая считывается из txt? vitiok1 C# (си шарп) 3 21.02.2012 16:53
Как программно удалить одну строку из текстового файла(txt)? lexus_samara Общие вопросы Delphi 6 24.04.2010 22:57
Берем ICQ 9-ти знаки! Zahib Свободное общение 0 04.09.2008 22:38


08:26.


Powered by vBulletin® Version 3.8.8 Beta 2
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.

RusProfile.ru


Справочник российских юридических лиц и организаций.
Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru