Есть несколько вещей, которые необходимо исправить:
- Расширенные (в вашем шаблоне) и Расширенные (в ваших выходных данных)
- В CLNAME есть цифры, которые не будут\ D +
- \ s +: \ s + требует пробелов вокруг двоеточия, для которого выходные данные не имеют
- Необходимо запомнить имя списка сообщества, так как может быть несколько строк действий дляк которому это относится.Используйте «Filldown».
Используя этот шаблон:
Value Filldown TYPE (Standard|Extended|Expanded)
Value Filldown CLNAME (\w+)
Value SEQ (\d+)
Value ACTION (permit|deny)
Value ASNUM (\d+)
Value TAGNUM (\d+)
Start
^${TYPE}\s+Community\s+List\s+${CLNAME}
^\s*${SEQ}\s+${ACTION}\s+"?${ASNUM}:${TAGNUM}"? -> Next.Record
EOF
Даст проанализированный вывод:
[['Expanded', 'ROUTES_CL1', '1', 'permit', '11111', '10000'],
['Standard', 'ROUTES_CL2', '1', 'permit', '11111', '10000'],
['Standard', 'ROUTES_CL2', '2', 'permit', '22222', '10000'],
['Standard', 'ROUTES_CL2', '3', 'permit', '33333', '10000']]
Аналогичный пример с дополнительным объяснением можетможно найти в textfsm wiki .