[^"]*
говорит о любом количестве символов, кроме "
.
[^"]*
является основным выражением.
(?<=Output=")
является объектом просмотра назад и гарантирует, что основное выражение следует за выражением в объекте просмотра, в данном случае Output="
.Выражение в виде заднего вида не включено в совпадение
Не думаю, что регулярное выражение является оптимальным.
Вы могли бы использовать:
'<Relation From="701047080" ObjectNumber="166543300" Output="77" To="464616324">' -match 'Output="(.*?)"'
(с регулярным выражением, столь же простым как Output="(.*?)"
)
и получившим 77 в $matches[1]
Регулярному выражению, вероятно, было просто сложно с представлением сзади, чтобы Output="
не былчасть матча.Это делает регулярное выражение более сложным и снижает производительность.Все, что вам нужно, это приведенное выше регулярное выражение и извлечь 77 с соответствующей группой.