【发布时间】:2016-09-01 00:23:24
【问题描述】:
我正在尝试使用Select-String 从正则表达式匹配中访问捕获。这是文本的示例。
'dataarea' - closed, 10,933 rows are stored
我想获取行数 (10,933)。
PS> Select-String -Path $foo -Pattern 'closed,\s\d+[.,\d.*]{1,}' `
| %{ $_.Matches } `
| %{ $_.Value } > $output
我尝试了不同的正则表达式,但不知道如何仅捕获数字。这也捕获了打开模式closed。
【问题讨论】:
-
你有什么问题?正则表达式还是什么?
-
我希望能够捕获 10,933 但不能
-
使用正则表达式,您通常必须在数据中查找模式,以便知道如何包含您想要的行并排除您不想要的行。您无法用一个数据点建立模式。
-
是,但我不能匹配 -close, ([0-9]+)
-
也许吧,但如果您是唯一知道其余数据是什么样子的人,那么您就是唯一知道答案的人。你让其他人不得不玩猜谜游戏来尝试为你想出一个解决方案。
标签: regex powershell