我有這樣列印出來的文本:
mdbAppText_Arr: [0]: The cover is open. {goes to next line here}
Please close the cover. and [1] Backprinter cover open
46
我嘗試在打開后擺脫換行符,它仍然存在。有更好的方法或解決我正在做的事情的想法嗎?我需要擺脫換行符,因為它會轉到一個 csv 檔案,并且會弄亂格式(去那里換行)。
這是我的代碼:
$mdbAppText_Arr = $mdbAppText.Split("|")
$mdbAppText_Arr[0].replace("`r",";").replace("`n",";").replace("`t",";").replace("&",";")
#replace newline/carriage return/tab with semicolon
if($alarmIdDef -eq "12-7")
{
Write-Host "mdbAppText_Arr: [0]: $($mdbAppText_Arr[0]) and [1] $($mdbAppText_Arr[1]) "
[byte] $mdbAppText_Arr[0][31]
}
我一直在看:
代替
替換- 這個有一個鏈接參考到 asci 表中的查找,但我不清楚在表/鏈接中位元組等價物是哪一列。
我正在使用 PowerShell 5.1。
uj5u.com熱心網友回復:
-replace是一個正則運算式運算子,因此您需要提供一個有效的正則運算式模式作為右側運算元。
您可以用描述子字串的模式替換大多數換行符序列,該子字串包括:
- 一個可選的回車(
\r?在正則運算式中),后跟 - 一個(非可選)換行符(
\n在正則運算式中):
$mdbAppText_Arr = $mdbAppText_Arr -replace '\r?\n'
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/415806.html
標籤:
上一篇:如何將嵌套的回圈物件附加到Powershell中的WHERE陳述句
下一篇:為什么將外部應用程式通過管道傳輸到Select-Object-First1將$LastExitCode設定為-1?
