Я хотел бы поместить небольшие фрагменты текста в длинное предложение, например, следующее
Предложение Input_full
TRSTUVWSRTPSAREWSTRESW
список коротких фрагментов
TRST
RESW
Выход
Я хочу, чтобы выходные данные были такими, чтобы везде, где совпадают короткие фрагменты, он может быть виден и помещен точно под длинным предложением
TRSTUVWSRTPSAREWSTRESW
|||| ||||
TRST RESW
С некоторым Python:
#! /usr/bin/python3
import sys
textfile = 'input.txt'
patfile = 'patterns.txt'
with open(textfile) as text:
with open(patfile) as pat:
patterns = [line.strip() for line in pat]
for line in text:
line = line.strip()
print(line)
out = line[:]
for p in patterns:
out = out.replace(p, '|'*len(p))
print(''.join(v if v == '|' else ' ' for v in out))
print(''.join(line[k] if v == '|' else ' ' for k, v in enumerate(out)))
По существу, это делает для каждой строки во входном файле:
|
в копии. |
замененный пробелами. |
происходит в копии или располагает с интервалами иначе. я предполагаю, что шаблоны фиксируются строка, которые не содержат |
.