Здравствуйте!
Есть проблема с raw-данными элемента и их препроцессингом через регулярное выражение.
Основной элемент: агент telnet с 2 пошаговыми командами. 2 введенных запроса возвращают отформатированный многострочный xml (текст) с несколькими строками мусора (эхо от введенных команд).
Зависимые элементы: получает данные из основного элемента через запрос xpath
Данные: должны извлекаться из основного элемента - различные типы (текстовые, цифровые и т.д.)
Если не использовать regex, в результате запроса я получаю 2 похожих xml-блока данных (и немного промежуточного мусора), и мне нужно игнорировать 1-ое вхождение (1-й xml блок) и поместить данные в элемент только от 2-го xml-блока, потому что 1-й бесполезен и ДОЛЖЕН игнорироваться.
Теги xml-блоков:
Проблема: я всегда получаю пустые данные в основной элемент, если я пытаюсь использовать его предварительную обработку с помощью regexp. Основной элемент поддерживается, но данные всегда пусты.
Может ли кто-нибудь помочь с препроцессингом, с правильным регулярным выражением?
Я пытаюсь использовать такую общую схему:
1. Основной элемент получает необработанные текстовые данные с блоками xml и пытается извлечь второе вхождение с этим регулярным выражением:
2. Все зависимые элементы извлекают данные из основного элемента через запросы xpath, например:
Полный xml-выхлоп и текущее экспериментальное регулярное выражение препроцессинга находятся здесь: https://regex101.com/r/I2ehOc/3
Спасибо!
Есть проблема с raw-данными элемента и их препроцессингом через регулярное выражение.
Основной элемент: агент telnet с 2 пошаговыми командами. 2 введенных запроса возвращают отформатированный многострочный xml (текст) с несколькими строками мусора (эхо от введенных команд).
Зависимые элементы: получает данные из основного элемента через запрос xpath
Данные: должны извлекаться из основного элемента - различные типы (текстовые, цифровые и т.д.)
Если не использовать regex, в результате запроса я получаю 2 похожих xml-блока данных (и немного промежуточного мусора), и мне нужно игнорировать 1-ое вхождение (1-й xml блок) и поместить данные в элемент только от 2-го xml-блока, потому что 1-й бесполезен и ДОЛЖЕН игнорироваться.
Теги xml-блоков:
Code:
<RESPONSE VERSION = "L100"> ... </RESPONSE>
Может ли кто-нибудь помочь с препроцессингом, с правильным регулярным выражением?
Я пытаюсь использовать такую общую схему:
1. Основной элемент получает необработанные текстовые данные с блоками xml и пытается извлечь второе вхождение с этим регулярным выражением:
Code:
(?:<R((?:.*?\r?\n?)*)E>) Output formatting: \2
Code:
/RESPONSE[@VERSION="L100"]/OBJECT[1]//PROPERTY[@name="virtual-disk-serial"]/text() /RESPONSE[@VERSION="L100"]/OBJECT[1]//PROPERTY[@name="health-numeric"]/text() и т.д
Спасибо!
Comment