0

Powershell を使用して -match を使用して文字列をパターンに分割すると、最後に出現したパターンのみが表示されます。

$a = "1 0 8 string a 8 string b 10 final string"
$a -match '^(\d+) (\d+) ((\d+) (\D+)){0,}'
$matches

ショー

True

Name   Value
----   -----
5      final string
4      10
3      10 final string
2      0
1      1
0      1 0 8 string a 8 string b 10 final string

これを「8」、「string a」、「8」、「string b」などに入力するにはどうすればよいですか???

ありがとう!

4

2 に答える 2

0

などを使用$matches.Group[3].Capture[0]して、その単一のグループに一致するすべてのテキストを取得できると思います。

私はPowerShellの構文にあまり詳しくありませんが、必要なライブラリへの参照は次のとおりです:
http://msdn.microsoft.com/en-us/library/30wbz966.aspx#CaptureCollection

于 2013-02-14T16:07:25.740 に答える