Я пытаюсь разобрать программного обеспечения, номер версии, и установлены на сегодняшний день из данных выглядит следующим образом:помощь с Факультативным Regex в PowerShell
AXIS Media Control Embedded AXIS Media Control 5.60 Redist [installed on 2014/05/28] Cisco WebEx Meetings Adobe Flash Player 13 ActiveX [version 13.0.0.214] Adobe Flash Player 13 Plugin [version 13.0.0.214] Bullzip PDF Printer 9.3.0.1516 [version 9.3.0.1516] [installed on 2014/05/12] Security Management System (Client) [version 7.0.1.0] [installed on 2014/05/28] Symmetry7500 Plugin [version 1.3] [installed on 2014/05/28] Cross Match Transmission Manager [version 3.8.9.0012] [installed on 2014/05/08] Cross Match Live Scan Management System [version 8.4.5.0031] [installed on 2014/05/08] System Center Endpoint Protection [version 4.7.214.0] [installed on 2016/07/21] Mozilla Firefox 50.0.2 (x86 en-US) [version 50.0.2] Mozilla Maintenance Service [version 50.0.2]
Данные я работаю всегда будет начинаться с имя программного обеспечения, а затем может быть как номер версии, так и установлен на дату или тот или иной, или ни один из них. Если оба присутствуют, хотя всегда будет номер версии, за которым следует установленная дата.
Вот регулярное выражение у меня до сих пор:
(.*?) ((\[version .*\]) (\[installed on .*\])|(\[version .*\])|(\[installed on .*\]))
Это работает, за исключением, когда это только название программного обеспечения. Различное размещение? для отметки секции OR регулярного выражения не сработало. Какие изменения мне необходимо сделать, чтобы захватить пункты 1 и 3 вместе со всем остальным?
Это сделал трюк! Спасибо много! – Tchotchke