как получить различные строки шаблона из файла, когда мы не знаем, какие шаблоны есть в файле - PullRequest
0 голосов
/ 20 июня 2019

Я пробовал регулярное выражение, но для регулярного выражения мне нужно указать ожидаемый шаблон. В этом случае я не знаю шаблон. Я только знаю, что есть шаблон, и я должен получить последнюю строку (одну строку) из каждого существующего шаблона. Любая помощь будет оценена. Спасибо!

Как получить различные строки шаблонов из файла (я не знаю, что это за шаблоны; однако я знаю, что шаблон существует)

I have a text file with the strings:

accounting:t27112017-1225
accounting:v1.0.2
accounting:v1.0.3
installer:v0.1
installer:v0.2
installer:v0.3
volumewatcher:v0.1
volumewatcher:v0.2
block_attacher_logs:v0.1
block_attacher_logs:v0.2
block_attacher_logs:v0.3
block_monitor:v1.0.0
block_monitor:v1.0.1
block_plugin_installer:qs_enhancement
child_dmpath_fix:v0.1
child_pv_fix:v0.1
compliance:4.5.0
compliance:4.6.0
compliance:4.6.2
compliance:4.6.3

I am expecting the below output:

accounting:
installer:
volumewatcher:
block_attacher_logs:
block_monitor:
block_plugin_installer:qs_enhancement
child_dmpath_fix:v0.1
child_pv_fix:v0.1
compliance:

Я надеюсь, что приведенный ниже пример даст некоторое представление о том, что я запрашиваю

Input:

 This is version:v1
 This is version:v2
 This is version:v3
 This is version:v4
 I need help:v1
 I need help:v2
 I need help:v3
 I need help:v4
 Thanks for the help:v1
 Thanks for the help:v2
 Thanks for the help:v3
 Thanks for the help:v4
 Thanks for the help:v5

 Expected output:
 This is version:v4
 I need help:v4
 Thanks for the help:v5

 OR 
 This is version:
 I need help:
 Thanks for the help:

Я не знаю шаблон в любой момент времени. Шаблон может быть любым, например "abc", "xyz", "mnl898" и т. Д. Одна группа использует один шаблон, другая группа использует другой шаблон, и все будут добавлены в один файл. В конце я должен проверить, какие существуют доступные шаблоны, и перечислить новый файл.

В моем файле доступно более 1000 шаблонов (однако я не знаю шаблон).

Я сделаю все возможное, чтобы дать идею:

Шаг 1. Каждая команда разработчиков может использовать собственное имя тега для продукта, но версии будут меняться по мере обновления кода.
Шаг 2. Существует 1000 различных имен тегов (они могут увеличиться и не поделятся с нами именами тегов).
Шаг 3: В конце дня будет запущено задание, которое обновит один файл со всеми данными команды.
Шаг 4. Моя работа заключается в том, чтобы узнать, какие разные теги доступны и какая последняя версия этого конкретного тега

Пока что я сделал:

Шаг 1: Сортировать файл по алфавиту
Шаг 2: Я пытался получить строки фиксированной длины, такие как первые 10 символов или первые 15 символов. Но каждая команда использует разную длину тегов (они могут использовать цифры или даже «:» в имени тега)
Шаг 3: Здесь я сталкиваюсь с трудностью получить имена тегов.
Шаг 4. Если я смогу захватить имя тега, я проанализирую и получу последнюю версию сборки

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...