我正在構建一個腳本來從一個系統中提取信息並將其放入另一個系統的CSV中以便將其拉出。我必須在這之前做一些數據清理。我從系統中拉出userid,然後以dom \ userid的形式出現。對於我的其他系統使用它,我必須擁有沒有dom的userid。我用下面的代碼來刪除dom和這個工程:PowerShell替換CSV中的文本
$csv = Import-Csv C:\Support\Broker.csv
$csv | %{ If ($_.LastConnectionUser -like "*DOM*") { $_.LastConnectionUser -replace 'DOM', '' } }
$csv | Export-Csv C:\Support\Broker.csv -NoTypeInformation -Force
這使我留下\ userid。當我添加\來替換字符串,該系統怪胎,因爲它試圖解釋\,不能做這樣代替我嘗試以下
$csv = Import-Csv C:\Support\Broker.csv
$csv | %{ If ($_.LastConnectionUser -like "*DOM*") { $_.LastConnectionUser -replace 'DOM`\', '' } }
$csv | Export-Csv C:\Support\Broker.csv -NoTypeInformation -Force
我得到同樣的錯誤
ERROR: Regular expression pattern is not valid: DOM_WFLD
\. broker.ps1 (24): ERROR: At Line: 24 char: 54 ERROR: + $csv | %{ If ($_.LastConnectionUser -like "*DOM*") { $_.LastConnectionUser -repl ... ERROR: + ~~~~~~~~~~~~~~~~~~~~~~~~~~~ ERROR: + CategoryInfo : InvalidOperation: (DOM_WFLD
:String) [], RuntimeException ERROR: + FullyQualifiedErrorId : InvalidRegularExpression
我似乎無法得到這個工作。有沒有人有任何想法?