replacer.py: удалён replace_in_text (заменён на apply_replacements напрямую)
Deploy drhider / validate (push) Waiting to run
Deploy drhider / validate (push) Waiting to run
This commit is contained in:
+4
-23
@@ -1,10 +1,10 @@
|
|||||||
"""
|
"""
|
||||||
Проход 2: замена сущностей в документах.
|
Проход 2: замена сущностей в документах.
|
||||||
|
|
||||||
Три метода:
|
Два метода:
|
||||||
1. _apply_replacements — замена в plain-тексте (ядро)
|
1. apply_replacements — замена в Markdown/plain-тексте (основной)
|
||||||
2. _replace_in_docx — замена в DOCX с сохранением форматирования
|
2. replace_in_docx — замена в DOCX с сохранением форматирования
|
||||||
3. _replace_in_text — замена в plain-тексте → bytes
|
(для опционального DOCX-выхода, будет добавлен позже)
|
||||||
"""
|
"""
|
||||||
|
|
||||||
import io
|
import io
|
||||||
@@ -99,22 +99,3 @@ def replace_in_docx(doc, mapping: Dict[str, str], sorted_keys: List[str]) -> byt
|
|||||||
buf = io.BytesIO()
|
buf = io.BytesIO()
|
||||||
doc.save(buf)
|
doc.save(buf)
|
||||||
return buf.getvalue()
|
return buf.getvalue()
|
||||||
|
|
||||||
|
|
||||||
def replace_in_text(text: str, fname: str, mapping: Dict[str, str], sorted_keys: List[str]) -> bytes:
|
|
||||||
"""Заменить сущности в plain-тексте.
|
|
||||||
|
|
||||||
Для PDF и прочих нетекстовых форматов — отдаём текст.
|
|
||||||
(MVP: без сохранения форматирования PDF).
|
|
||||||
|
|
||||||
Args:
|
|
||||||
text: Исходный текст
|
|
||||||
fname: Имя файла (для будущего использования — разные форматы)
|
|
||||||
mapping: Словарь замен
|
|
||||||
sorted_keys: Ключи mapping по убыванию длины
|
|
||||||
|
|
||||||
Returns:
|
|
||||||
Бинарное содержимое с заменами (UTF-8)
|
|
||||||
"""
|
|
||||||
replaced = apply_replacements(text, mapping, sorted_keys)
|
|
||||||
return replaced.encode('utf-8')
|
|
||||||
|
|||||||
Reference in New Issue
Block a user