加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

Powershell通配符/正则表达式替换

发布时间:2020-12-14 06:00:49 所属栏目:百科 来源:网络整理
导读:我正在尝试编写Power Shell脚本来将我的.nuspec文件(nuget depdency)更新为最新的构建版本.我遇到了通配符问题. 所以我想替换这一行的版本号 dependency id="MyCompany.Common" version="1.0.0.0" / 到新版本号,即版本2.2.2.2 dependency id="MyCompany.Comm
我正在尝试编写Power Shell脚本来将我的.nuspec文件(nuget depdency)更新为最新的构建版本.我遇到了通配符问题.

所以我想替换这一行的版本号

<dependency id="MyCompany.Common" version="1.0.0.0" />

到新版本号,即版本2.2.2.2

<dependency id="MyCompany.Common" version="2.2.2.2" />

我目前的地方法看起来像这样.注意我需要一个通配符,因为我需要替换的解决方案中有多个nuget包,都遵循MyCompany.PackageName的格式

$filecontent -replace 'id="MyCompany.*" version="*"',"$Version" | Out-File $file

但实际上这最终会产生

<dependency 2.2.2.21.0.0.0" />

如何修改我的正则表达式以确保它仅替换版本号组件?

解决方法

用…来代替

$filecontent -replace 'id="MyCompany(.*?)" version=".*?"',"id=`"MyCompany`$1`" version=`"$Version`"" | Out-File $file

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读