【发布时间】:2019-01-18 08:13:30
【问题描述】:
我从 invoke-webrequest 中得到以下几行:
numVersion = 'v1.1805.24',
if(numVersion!="#@numVersion@#" && numVersion!="v1.1805.24") {
从此摘录中,我只需将 numVersion Number 保留在单引号之间 ==> v1.1805.24。
但结果我得到了所有行:
numVersion = 'v1.1805.24',
if(numVersion!="#@numVersion@#" && numVersion!="v1.1805.24") {
代码如下:
$r = Invoke-WebRequest -Uri $url -Method Get
$split_string = $r.content -split "`n"
$raw_version = $split_string | select-string -Pattern 'numVersion'
$raw_version -match '(.*?[^*])'
【问题讨论】:
-
试试
$r.content -match "(?<=numVersion\s*=\s*')v[0-9.]+"。$matches[0]应该保持正确的值。 -
您好,感谢您的反馈,糟糕的是,$matches[0] 返回 numVersion = '
-
看here,你一定没有使用我写的建议。
-
我忘记在我的模式中添加 =。现在您的代码运行良好。谢谢
标签: regex powershell-4.0