|
87 / 95 / 15
Регистрация: 26.06.2013
Сообщений: 4,755
|
|
Как найти совпадающие слова в файлах с Portacle?16.09.2020, 22:48. Показов 5546. Ответов 44
Метки нет (Все метки)
Опишу задачу, используя регулярное выражение для примера. А Вы объясните, пожалуйста, пошагово и с кодом, как выполнить нужное в Portacle.
Надо поискать в папке (а если можно, то и во вложенных тоже) файлы, соответствующие запросу, и чтобы можно было выводить найденные файлы на экран по одному для просмотра, и чтобы фон всех совпадающих слов подсвечивался одновременно. Вместо (ПРОПУСК ТЕКСТА) надо что-то придумать, чтобы этот фрагмент выпадал из результата, возвращаемого регуляркой. Надо искать файлы, которые одновременно содержат обе части, написанные до (ПРОПУСК ТЕКСТА) и после. Как вариант, можно для второй последовательности, делать поиск в найденном. Надо, чтобы подсвечивалось не только два совпадения, а все, которые есть в документе. Размер обрабатываемых файлов - одна или несколько страниц. Пример регулярного выражения: кашел|кашл(ПРОПУСК ТЕКСТА)насморк|ринит|синусит|сопл|выделе н.+нос|нос.*выделен |гайморит Вместо двух частей, как в этом регулярном выражении, может быть больше (меньше то же возможно, только это маловероятно). Регулярку не стал делать, чтобы искало все слово вместе с окончанием (некоторые слова показаны здесь укороченными для совпадения с разными падежами), планирую доделать потом.
0
|
|
| 16.09.2020, 22:48 | |
|
Ответы с готовыми решениями:
44
Как найти самые длинные слова во всех файлах? Найти совпадающие слова в тексте
|
|
87 / 95 / 15
Регистрация: 26.06.2013
Сообщений: 4,755
|
|
| 17.09.2020, 10:52 [ТС] | |
|
Из Geany запустил.
File "poisk1.py", line 5 for root, dirs, files in os.walk('.'): ^ IndentationError: expected an indented block
0
|
|
|
87 / 95 / 15
Регистрация: 26.06.2013
Сообщений: 4,755
|
|
| 17.09.2020, 11:34 [ТС] | |
|
А как сделать, чтобы строки с not found не выводились?
0
|
|
|
87 / 95 / 15
Регистрация: 26.06.2013
Сообщений: 4,755
|
|
| 17.09.2020, 11:39 [ТС] | |
|
Пробовал. Выводит open filename: путь
Добавлено через 44 секунды То есть надо оставить в консоли только строки с совпадениями.
0
|
|
|
Просто Лис
|
|||||||
| 17.09.2020, 11:42 | |||||||
|
Ты, что ли, совсем не понимаешь питон? Возьми листочек и нарисуй блок-схему поэтому кусочку кода:
0
|
|||||||
|
Заблокирован
|
|
| 17.09.2020, 12:22 | |
|
supmener, ты вроде Linux пользуешься.
У тебя уже полно готовых инструментов для таких задач.
1
|
|
|
87 / 95 / 15
Регистрация: 26.06.2013
Сообщений: 4,755
|
|
| 17.09.2020, 12:31 [ТС] | |
|
Благодарю. Только не понимаю, как использовать пример на скриншоте для поставленной задачи.
0
|
|
|
87 / 95 / 15
Регистрация: 26.06.2013
Сообщений: 4,755
|
|
| 17.09.2020, 12:39 [ТС] | |
|
А Вы не могли бы подсказать, что конкретно надо писать в консоли, если уже прочитали то, что по ссылке?
0
|
|
|
Заблокирован
|
|
| 17.09.2020, 13:12 | |
|
Все зависит от того, что ты хочешь получить.
Вот я создал три файла в паке /tmp/ В двух из них есть твой паттерн, а в одном - target2 - нет.
0
|
|
|
87 / 95 / 15
Регистрация: 26.06.2013
Сообщений: 4,755
|
|
| 17.09.2020, 13:17 [ТС] | |
|
Надо отобрать файлы, в которых одновременно есть совпадения по обоим регулярным выражениям:
кашел|кашл насморк|ринит|синусит|сопл|выделен.+нос| нос.*выделен |гайморит выводить их на экран (содержимое файлов) и подсвечивать совпадения, выдаваемые обоими регулярными выражениями одновременно.
0
|
|
|
Заблокирован
|
||||||
| 17.09.2020, 13:44 | ||||||
0
|
||||||
|
87 / 95 / 15
Регистрация: 26.06.2013
Сообщений: 4,755
|
|
| 17.09.2020, 16:08 [ТС] | |
|
Этот код не решает поставленной задачи.
0
|
|
|
87 / 95 / 15
Регистрация: 26.06.2013
Сообщений: 4,755
|
|
| 17.09.2020, 16:46 [ТС] | |
|
Человек подсказал, что это можно сделать в Emacs. А в другой теме выяснили, что в командной строке Линукс, то что нужно, сделать нельзя. В то же время, человек который это объяснил, как я понял потом, не знал точно, в чем заключается задача.
0
|
|
|
Заблокирован
|
||
| 17.09.2020, 19:09 | ||
|
0
|
||
|
87 / 95 / 15
Регистрация: 26.06.2013
Сообщений: 4,755
|
|
| 17.09.2020, 20:50 [ТС] | |
|
И каким же образом этот код ищет файлы, в которых одновременно присутствуют совпадения от обоих регулярных выражений? У Вас в коде одно регулярное выражение, а не два.
0
|
|
|
Заблокирован
|
|
| 17.09.2020, 22:05 | |
|
supmener, я тебе пример показал как сделать, а дальше ты уже ищи как и что тебе надо и как надо, какие угодно паттерны.
Читай man egrep и смотри паттер-матчинг.
0
|
|
|
87 / 95 / 15
Регистрация: 26.06.2013
Сообщений: 4,755
|
|
| 17.09.2020, 22:11 [ТС] | |
|
Если это невозможно, то смысла искать нету. Это уже в другой теме стало понятно.
0
|
|
| 17.09.2020, 22:11 | |
|
Помогаю со студенческими работами здесь
40
Найти слова совпадающие с начальным отрезком латинского алфавита В тексте найти слова, совпадающие по трем последним символам
Найти в файлах ключевые слова Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
| Опции темы | |
|
|
Новые блоги и статьи
|
|||
|
Модель заражения группы наркоманов
alhaos 17.04.2026
Условия задачи сформулированы тут
Суть:
- Группа наркоманов из 10 человек.
- Только один инфицирован ВИЧ.
- Колются одной иглой.
- Колются раз в день.
- Колются последовательно через. . .
|
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
|
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
|
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . .
а удачный момент так и не приходит.
|
|
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица.
Задача: зафиксировать три левых колонки в отчете.
Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка)
/ / . . .
|
Настройки VS Code
Loafer 13.04.2026
{
"cmake. configureOnOpen": false,
"diffEditor. ignoreTrimWhitespace": true,
"editor. guides. bracketPairs": "active",
"extensions. ignoreRecommendations": true,
. . .
|
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2.
Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива.
Было так:. . .
|
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2.
Задача: реализовать контроль корректности заполнения дат назначения. . .
|