我有一些数据,内容如下:
:setvar DatabaseName "CI_1814903104"
:setvar DefaultFilePrefix "CI_1814903104"
--etc.
GO
我希望将所有以:setvar开头的sql cmd变量行替换为空字符串,使得数据看起来像这样:
--etc.
GO
这个语句(其中
$script
包含数据)似乎可以解决问题,但仍然保留了换行符:$script -replace ":setvar(.*$)", ""
导致结果如下:
--etc.
GO
我应该如何在匹配中包含换行符?它似乎匹配了但实际上没有替换。感谢任何帮助。
\r
,所以保留它也没有多大意义——我会编辑帖子去掉它。 - Anthony NeaceGet-Content -Raw
命令而不是管道传递到Out-String
命令也可以完成任务。请参见 Microsoft Docs - Get-Content。 - pavol.kutaj