регулярное выражение, чтобы соответствовать всему между двумя словами - PullRequest
4 голосов
/ 01 ноября 2011

Написание сценария TCL для сопоставления всего между двумя ключевыми словами

Пример:

X509v3 Extended Key Usage:

1.2.3.4, 1.3.6.1.4.1.311.4, 1.1.1.1, 234.432.1.36.4564.345

55.55.55.55, 66.66.66.66, 1234.5443.123.321.12.332.231.1

X509v3 Subject Key Identifier:

Я хочу иметь возможность получить всю информацию между использованием расширенного ключа и ключом субъектаИдентификатор.

1.2.3.4, 1.3.6.1.4.1.311.4, 1.1.1.1, 234.432.1.36.4564.345

55.55.55.55, 66.66.66.66, 1234.5443.123.321.12.332.231.1

Что я пробовал без успеха:

set content [regexp {(?=<Extended Key Usage)(?s)(.*)(?=X509)} $ext match]
.
set content [regexp {\y(Extended Key Usage)(.*)(X509)\y} $ext match]

1 Ответ

1 голос
/ 01 ноября 2011
regexp -linestop {Extended Key Usage:\s.*[\r\n]+((?:.|[\r\n])*?)(?=\s*X509v3 Subject Key Identifier:)} $subject regexmatch result

Попробуйте это.Результат фиксируется в группе захвата 1. Lookbehind поддерживается не в TCL ARE http://wiki.tcl.tk/461

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...