1 | ||||||
Найти все слова в тексте содержащие одинаковую часть19.09.2019, 16:18. Показов 4798. Ответов 19
Метки нет (Все метки)
Есть текстовый файл, много много слов
Точно знаю, что в текстовом файле встречается упоминание одного файла - image.jpg - но есть маленькая деталь в файле нужно найти все упоминания. Например, в файле упоминание может встречаться _src="/upload/old/cn6.jpg"_ где "_" = пробел или _000/u77/6/0/roga-bez-pasporta-picture-normal.jpg\nsmall:_ где _ (доска) = пробел или _target="_blank">https://site.ru/upload/users/photos/medium/cn6.jpg</a>"_ из этого всего, в функции мне нужно возвращать путь - или upload/old/cn6.jpg или 000/u77/6/0/roga-bez-pasporta-picture-normal.jpg или upload/users/photos/medium/cn6.jpg чтобы потом копировать файл и сохранять по этому пути Ниже, простой функцией, я могу найти, есть файл в базе или нет
путь или несколько путей, если файл встречается несколько раз
0
|
19.09.2019, 16:18 | |
Ответы с готовыми решениями:
19
Найти в данном тексте все слова, содержащие от 2-х до 4-х гласных букв В данном тексте найти все слова, содержащие заданную подстроку s Найти все слова содержащие заданный символ и встречающиеся в тексте не менее 2 раз Найти в данном тексте все слова, содержащие наибольшее количество гласных латинских букв (a, e, i, o, u) Найти в тексте слова, содержащие не менее трех букв из первого слова |
102 / 75 / 38
Регистрация: 08.11.2017
Сообщений: 272
|
|
19.09.2019, 16:49 | 2 |
IRIP, и в чём вопрос?
0
|
4977 / 1005 / 144
Регистрация: 29.01.2013
Сообщений: 5,927
|
|
20.09.2019, 09:55 | 4 |
IRIP, так мы же недавно помогали вам решить похожую задачу, или я что-то путаю?
0
|
Welemir1
|
20.09.2019, 10:00
#5
|
Не по теме: Alli_Lupin, не путаешь, причем понятнее его задания не становятся, наоборот...
0
|
20.09.2019, 10:30 [ТС] | 6 |
в том задании, метод решения был - найти все расширения картинок в базе данных - и вывести их списком.
потом сравнить с имеющимися и ... а в этом задании - не нужно искать по расширениям. Это другой подход. здесь уже есть конкретная картинка с именем и расширением и нужно выдрать из базы все ее упоминания от пробела до пробела это совершенно другой подход
0
|
4977 / 1005 / 144
Регистрация: 29.01.2013
Сообщений: 5,927
|
|
20.09.2019, 10:31 | 7 |
IRIP, вы не поверите. Пичаль в том, что поиск выполняется одинаково что там, что там.
0
|
4977 / 1005 / 144
Регистрация: 29.01.2013
Сообщений: 5,927
|
|
20.09.2019, 10:58 | 9 |
IRIP, алгоритм примерно такой: ищите подстроку ".jpg" или с другим расширением, парсим эту строку, находим
" до и после расширения, копируем подстроку. По факту надо 2 цикла и 2 условия.
0
|
20.09.2019, 11:18 [ТС] | 11 |
Alli_Lupin,
Алгоритм примерно такой мне виделся: 1. Получили название файла 2. Ищем все строки содержащие это "слово" 3. Вырезаем слово содержащее искомое "слово" от пробела до пробела 4. Добавляем его в list 5. Возвращаем лист в ответе функции Добавлено через 10 минут лямбда это не функция, на сколько я понимаю, она не имеет веса и не занимает постоянной памяти но должны быть и другие решения?
0
|
4977 / 1005 / 144
Регистрация: 29.01.2013
Сообщений: 5,927
|
|
20.09.2019, 12:12 | 13 |
IRIP, ну вот, вы всё знаете, так что вас останавливает?
0
|
955 / 341 / 114
Регистрация: 04.08.2018
Сообщений: 2,533
|
|
20.09.2019, 12:16 | 14 |
IRIP, лямбда это инструкция.
Добавлено через 50 секунд IRIP, но по сути своей является анонимной функцией. Поэтому её можно считать за функцию
0
|
20.09.2019, 15:18 [ТС] | 15 | |||||
С этим согласен.
Наглядно иллюстрирует объем выполняемой работы, вот этот код
а файлов больше 100 000 и на поиск каждого вхождения будет проведено 200000*100000=20.000.000.000 операций Добавлено через 1 минуту Производительность и скорость решения задачи
0
|
4977 / 1005 / 144
Регистрация: 29.01.2013
Сообщений: 5,927
|
|
20.09.2019, 15:34 | 16 |
IRIP, подобные задачи надо распараллеливать. С параллельностью в пайтоне грустно.
0
|
20.09.2019, 15:52 [ТС] | 17 |
Alli_Lupin, не обязательно распараллеливать наверно
должны быть решения. Я по другому пути изначально и пошел, потому что думал сначала получить список таких файлов а затем из него выбирать но это оказалось еще дольше, совершает больше операций, чем предложенный в этой теме вариант Возможно, нужно напрямую к базе данных обращаться... и там искать...
0
|
20.09.2019, 22:18 [ТС] | 18 |
в общем, нужно более изящное решение
чтобы не искать каждую фразу в файле ... а если напрямую к базе данных подключиться? (нужно искать по всем таблицам всей базы данных) это ускорит процесс?
0
|
4977 / 1005 / 144
Регистрация: 29.01.2013
Сообщений: 5,927
|
|
21.09.2019, 16:03 | 19 |
IRIP, нужно именно распараллеливать. Системы многоядерные, производительность повысится в разы.
0
|
24.09.2019, 18:02 [ТС] | 20 | |||||
Вот решение написал
с ним потом можно делать все, что нужно функция работает очень шустро (на сколько я могу судить)
0
|
24.09.2019, 18:02 | |
24.09.2019, 18:02 | |
Помогаю со студенческими работами здесь
20
Если все слова в тексте имеют одинаковую длину, вывести слово "ДЛИНА" Найти в тексте слова, содержащие не менее трех букв из последнего слова текста Текстовые файлы: Найти в тексте слова, содержащие не менее трех букв из последнего слова текста В произвольном тексте найти и отпечатать слова, содержащие букву i, но не содержащие букву m Вывести в алфавитном порядке все слова, содержащие наибольшее количество гласных букв; найти все слова, в которые буква В заданном тексте найти слова, содержащие цифры Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи | |||||
Книги и учебные ресурсы по C#
InfoMaster 08.01.2025
Базовые учебники и руководства
Одной из лучших книг для начинающих является "C# 10 и . NET 6 для начинающих" Эндрю Троелсена и Филиппа Джепикса . Книга последовательно раскрывает основные концепции. . .
|
Что такое NullReferenceException и как исправить?
InfoMaster 08.01.2025
NullReferenceException - одно из самых распространенных исключений, с которым сталкиваются разработчики на C#. Это исключение возникает при попытке обратиться к членам объекта (методам, свойствам или. . .
|
Что такое Null Pointer Exception (NPE) и как это исправить?
InfoMaster 08.01.2025
Null Pointer Exception (NPE) - это одно из самых распространенных исключений в Java, которое возникает при попытке использовать ссылку на объект, значение которой равно null. Это исключение относится. . .
|
Русский язык в консоли C++
InfoMaster 08.01.2025
При разработке программ на C++ одной из частых проблем, с которой сталкиваются русскоязычные программисты, является корректное отображение кириллицы в консольных приложениях. Эта проблема особенно. . .
|
Telegram бот на C#
InfoMaster 08.01.2025
Разработка ботов для Telegram стала неотъемлемой частью современной экосистемы мессенджеров. C# предоставляет мощный и удобный инструментарий для создания разнообразных ботов, от простых. . .
|
Использование GraphQL в Go (Golang)
InfoMaster 08.01.2025
Go (Golang) является одним из наиболее популярных языков программирования, используемых для создания высокопроизводительных серверных приложений. Его архитектурные особенности и встроенные. . .
|
Что лучше использовать при создании класса в Java: сеттеры или конструктор?
Alexander-7 08.01.2025
Вопрос подробнее:
На вопрос: «Когда одновременно создаются конструктор и сеттеры в классе – это нормально?» куратор уточнил: «Ваш класс может вообще не иметь сеттеров, а только конструктор и геттеры. . .
|
Как работать с GraphQL на TypeScript
InfoMaster 08.01.2025
Введение в GraphQL и TypeScript
В современной разработке веб-приложений GraphQL стал мощным инструментом для создания гибких и эффективных API. В сочетании с TypeScript, эта технология. . .
|
Счётчик на базе сумматоров + регистров и генератора сигналов согласования.
Hrethgir 07.01.2025
Создан с целью проверки скорости асинхронной логики: ранее описанного сумматора и предополагаемых fast регистров. Регистры созданы на базе ранее описанного, предполагаемого fast триггера. То-есть. . .
|
Как перейти с Options API на Composition API в Vue.js
BasicMan 06.01.2025
Почему переход на Composition API актуален
В мире современной веб-разработки фреймворк Vue. js продолжает эволюционировать, предлагая разработчикам все более совершенные инструменты для создания. . .
|
Архитектура современных процессоров
inter-admin 06.01.2025
Процессор (центральный процессор, ЦП) является основным вычислительным устройством компьютера, которое выполняет обработку данных и управляет работой всех остальных компонентов системы. Архитектура. . .
|
История создания реляционной модели баз данных, правила Кодда
Programming 06.01.2025
Предпосылки создания реляционной модели
В конце 1960-х годов компьютерная индустрия столкнулась с серьезными проблемами в области управления данными. Существовавшие на тот момент модели данных -. . .
|