以下是两个字符。 1. {{ 2.}} 我正在尝试在以下文件中找到这些字符之间的所有字符串。
<add key="CSDFG_SqlServerFailOverInterval" value="{{environment}}"/>
<add key="CSDFG_JobResetInterval" value="600000"/>
<add key="FileTypeFilter" value="{{filetype}}"/>
我正在使用以下powershell命令,
$x = C:\app.config
$s = Get-Content $x
$prog = [regex]::match($s,'{{([^/)]+)}}').Groups[1].Value
write-host $prog
我的输出只是一个字符串。它并没有拉动所有的弦。有人可以建议我如何获得所有的字符串。提前谢谢。
答案 0 :(得分:8)
[regex]::Match()
仅返回第一个匹配。使用[regex]::Matches()
捕获所有匹配项:
$s = Get-Content 'C:\app.config'
[regex]::Matches($s, '{{([^/)]+)}}') |ForEach-Object { $_.Groups[1].Value }