powered by simpleCommunicator - 2.0.41     © 2025 Programmizd 02
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Поиск текста в файлах
5 сообщений из 5, страница 1 из 1
Поиск текста в файлах
    #40128920
SAS2014
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Написал код который ищет в файлах текст и выводит в таблицу, условие такое, что есть файл тхт в нем написано

трус 145566
бывалый 455664
балбес 427623

если в файле например 1111 (paket) нашел 145566 и больше в других файлах 145566 нет то результат

пакет сайт
1111 трус

если в файле например 3333 (paket) нашел 455664 и потом 427623 то результат

пакет сайт
3333 бывалый, балбес

Все это прога ищет в файлах текст в подкаталогах с именами 1111, 2222, 3333, 4444, в общем во всех подкаталогах

Код: 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.
string f = "temp_files";
            string[] list = Directory.GetFiles(f, "*.*", SearchOption.AllDirectories).ToArray();

            string path_sites = t_conf_files.Text;
            StreamReader s = new StreamReader(path_sites, Encoding.Default);
            string saits = "";
            string paket = "";

            while (!s.EndOfStream) // цикл по файлу с сайтами
            {
                string sss = s.ReadLine();
                string id_s = sss.Split(' ')[1];
                string sait = sss.Split(' ')[0];

                foreach (string a in list)
                {
                    saits = "";
                    StreamReader str = new StreamReader(a, Encoding.Default);
                    while (!str.EndOfStream)
                    {
                       
                        string st = str.ReadLine();

                        if (st.Contains(id_s))
                        {
                            paket = a.Split('\\')[1]; // оставить только имя пакета
                            saits += sait + ", ";

                            dataGridView1.Rows.Add(paket, saits);
                          
                        }
                       
                    }                  
                }
              
            }



Проблема в том, что результат не такой какой надо см картинку
...
Рейтинг: 0 / 0
Поиск текста в файлах
    #40128926
Mixon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
SAS2014,

Словарь Вам в помощь.
Dictionary<string,List<string>>()
где ключ(Key) имя файла, а (Value)Список найденых совпадений со списком искомых значений, в конце сортируете по ключу и далее стрингом склеивайте ранее отсортированный список, если он не пустой.
...
Рейтинг: 0 / 0
Поиск текста в файлах
    #40130941
SAS2014
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Регулярной ищу в строке точное слово, например 145626655
вот таким способом
Код: c#
1.
string pattern = @"\b" + id_s + @"\b"; 



но если в иском слове есть знак -, например -4686566
то регуляркой не проходит поиск

я так понял что знак минус это рассматривается как служебный символ
Вопрос как его экранировать?

Код: c#
1.
@"\b" + id_s + @"\b"; 

- в переменную попадает значение -4686566
пробовал написать так
Код: c#
1.
string pattern = @"\b\-?" + id_s + @"\b"; 

- не помогло
...
Рейтинг: 0 / 0
Поиск текста в файлах
    #40130947
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SAS2014
я так понял что знак минус это рассматривается как служебный символ
Вопрос как его экранировать?
Жаль, что гугол есть не у всех. держи: Regex.Escape
...
Рейтинг: 0 / 0
Поиск текста в файлах
    #40131135
SAS2014
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Shocker.Pro
SAS2014
я так понял что знак минус это рассматривается как служебный символ
Вопрос как его экранировать?
Жаль, что гугол есть не у всех. держи: Regex.Escape


ок спс
искал я в гугле , просто может плохо искал не так как надо
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Поиск текста в файлах
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]