Точка в конце и удаление лишних пробелов

This commit is contained in:
2025-05-14 11:29:34 +03:00
parent d7a0e400cd
commit 681b56b31b
2 changed files with 11 additions and 1 deletions

View File

@@ -1,4 +1,5 @@
Предложение -> ПрямойПорядок | Инверсия
Предложение -> Повествовательное "."
Повествовательное -> ПрямойПорядок | Инверсия
ПрямойПорядок -> Подлежащее ДополнениеКПодлежащему Глагол ВторостепенныеЧлены Отрицание
Инверсия -> Обстоятельство Глагол Подлежащее ВторостепенныеЧлены Отрицание
Подлежащее -> ИменнаяГруппа ПридаточноеПредложение | Местоимение

View File

@@ -70,6 +70,14 @@ def check_string(grammar: Grammar | None, input_string: str) -> None:
print(f"Произошла ошибка при анализе: {e}")
def post_process_string(string: str) -> str:
string = string.capitalize()
string = string.replace(" ,", ",")
string = string.replace(" .", ".")
string = string.replace(",.", ".")
return string
def generate_string(grammar: Grammar | None) -> None:
if not grammar:
print("Ошибка: Грамматика не загружена")
@@ -78,6 +86,7 @@ def generate_string(grammar: Grammar | None) -> None:
try:
terminals, rules = grammar.generate()
generated_string = " ".join(terminals)
generated_string = post_process_string(generated_string)
print(f"Сгенерированная строка: {generated_string}")
print(f"Применённые правила: {rules}")