В Python, какой самый быстрый способ (то есть однопроходный метод) заключается в вставке двух больших наборов текста, A и B, в другой большой набор текста, C.
Где C, например:
.... ....
<<<A goes here>>>
.... ....
<<<B goes here>>>
.... ....
и "...." представляет довольно много текста (т.е. до 20 КБ).
Каков наилучший способ вставки A и B в соответствующие заполнители, где A и B также не являются «небольшими» объемами текста (т. Е. До 2k).
Моя первая мысль - сделать:
C.replace("<<<A goes here>>>", A)
C.replace("<<<B goes here>>>", B)
однако, так как он был пройден дважды, я надеюсь, что будет однопроходное решение. Я рассматривал регулярное выражение, но это кажется излишним. string.Template
является опцией, но синтаксис не подходит (т. Е. $A
- это заполнитель, который может иметь конфликты с другим текстом, а '$' не подходит для экранирования в другом месте).
В то время как заполнители A и B встречаются в C только один раз, я хотел бы иметь решение, которое масштабировалось бы до большего числа замен, т.е. независимо от числа замен; O (n), где n - это len (C).
Мысли и предложения приветствуются.
Спасибо.
Brian