PowerShell -opérateur de match et plusieurs groupes

J'ai suivantes entrée de journal que je suis le traitement en PowerShell, je suis en train d'extraire toutes les activité de les noms et les durées à l'aide de la -match opérateur, mais je suis seulement à l'obtention d'un match de groupe. Je ne reçois pas tous les matchs que je vois quand je fais la même chose en C# à l'aide de la Regex objet. Quelqu'un peut m'expliquer ce que je fais de mal?

Pertinentes Script PowerShell

$formattedMessage -match "(Get\sClient\sModel|Parse\sExpression|Get\sAbstract\sQuery|Compile\sQuery|Execute\sQuery|Get\sQuery\sPlan\sComplexity|Async\sTotal|Total)\s-\sduration\(([0-9]*)" | out-null
$matches

Sortie

Name  Value
----  -----
0     Get Client Model - duration(0   
1     Get Client Model
2     0

Entrée De Journal Exemple:

Timestamp: 11/9/2009 6:48:41 PM
Message: 
Category: QueryService
Priority: 3
EventId: 1001
Severity: Information
Title: SPARQL Query Response
Machine: SPOON16-SERVER
App Domain: KnowledgeBaseHost.exe
ProcessId: 2040
Process Name: D:\QueryService\QSHost.exe
Thread Name: 
Win32 ThreadId:8092
Extended Properties:
Key - Workflow_cbbdd58b-e574-4054-88d4-1dd7a56dc9d9
Timeout - 1800
Result Format - WireTable
Result from Registry - False
Compiled Query from Cache - True
Result Count - 28332
Query Plan Complexity - 661622
Get Client Model - duration(0) start(0)
Parse Expression - duration(0) start(0)
Get Abstract Query - duration(0) start(0)
Compile Query - duration(0) start(0)
Get Query Plan - duration(0) start(1)
Execute Query - duration(63695) start(1)
Get Query Plan Complexity - duration(0) start(63696)
Get Executed Operations - duration(0) start(63696)
Total - duration(63696) start(0)
Async Total - duration(63696) start(0)

OriginalL'auteur Eric Schoonover | 2009-11-09