Пусть вереница - это последовательность чего либо,
а череда - это последовательность с разделителями.
тогда, например:
грамматика_бнф | вереница_правил вереница_правил | ничто | правило вереница_правил правило | нетерминал @"вертикальная_черта" непустая_череда_альтернатив непустая_череда_альтернатив | альтернатива череда_альтернатив череда_альтернатив | ничто | @"вертикальная_черта" альтернатива череда_альтернатив альтернатива | вереница_терминалов_или_нетерминалов вереница_терминалов_или_нетерминалов | ничто | терминал_или_нетерминал вереница_терминалов_или_нетерминалов терминал_или_нетерминал | терминал | нетерминал нетерминал | @"буква" вереница_символов_нетерминала терминал | описание_терминала | @"символ_коммерческое_эт" описание_терминала описание_терминала | @"двойная_кавычка" вереница_символов_строки @"двойная_кавычка" | @"одинарная_кавычка" @"любой_символ_кроме_одинарной_кавычки" @"одинарная_кавычка" вереница_символов_нетерминала | ничто | символ_словосочетания вереница_символов_нетерминала символ_словосочетания | @"буква" | @"цифра" | @"разделитель_слов_в_словосочетании" вереница_символов_строки | ничто | @"любой_символ_кроме_двойных_кавычек" вереница_символов_строки ничто | /* Это закомментированный текст, просто для понимания буква |'а'|'б'|'в'|'г'|'д'|'е'|'ё'|'ж'|'з'|'и'|'й'|'к'|'л'|'м'|'н'|'о'|'п'|'р'|'с'|'т'|'у'|'ф'|'х'|'ц'|'ч'|'ш'|'щ'|'ъ'|'ы'|'ь'|'э'|'ю'|'я' |'А'|'Б'|'В'|'Г'|'Д'|'Е'|'Ё'|'Ж'|'З'|'И'|'Й'|'К'|'Л'|'М'|'Н'|'О'|'П'|'Р'|'С'|'Т'|'У'|'Ф'|'Х'|'Ц'|'Ч'|'Ш'|'Щ'|'Ъ'|'Ы'|'Ь'|'Э'|'Ю'|'Я' цифра |'0'|'1'|'2'|'3'|'4'|'5'|'6'|'7'|'8'|'9' разделитель_слов_в_словосочетании |'_' символ_коммерческое_эт |'@' вертикальная_черта |'|' двойная_кавычка |'"' одинарная_кавычка |"'" любой_символ_кроме_одинарной_кавычки |буква|цифра|разделитель_слов_в_словосочетании|символ_коммерческое_эт|вертикальная_черта|двойная_кавычка */
Отредактировано Лис (2024-11-13 22:37:43)