Точка в конце и удаление лишних пробелов
This commit is contained in:
@@ -1,4 +1,5 @@
|
||||
Предложение -> ПрямойПорядок | Инверсия
|
||||
Предложение -> Повествовательное "."
|
||||
Повествовательное -> ПрямойПорядок | Инверсия
|
||||
ПрямойПорядок -> Подлежащее ДополнениеКПодлежащему Глагол ВторостепенныеЧлены Отрицание
|
||||
Инверсия -> Обстоятельство Глагол Подлежащее ВторостепенныеЧлены Отрицание
|
||||
Подлежащее -> ИменнаяГруппа ПридаточноеПредложение | Местоимение
|
||||
|
||||
@@ -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}")
|
||||
|
||||
|
||||
Reference in New Issue
Block a user