Jac*_*001 3 powershell powershell-5.0
我正在尝试修复一个带有尾随的 CSV 文件,\r\n
。无论我做什么,它都无济于事。我尝试将表达式放入[]
其中,使其替换每个逗号。这意味着问题在于它无法匹配换行符。
我已保存使用文本崇高的Windows行结尾的文件,并尝试的两种变化\r\n
,\n\r
和刚\n
。
(Get-Content file.txt) | ForEach-Object { $_ -replace '\,\r\n', [System.Environmen
t]::NewLine } | Set-Content file2.txt
Run Code Online (Sandbox Code Playgroud)
我正在使用 PowerShell 版本 5.1.15063.413
PowerShell 非常......特别。
Get-Content
默认情况下返回一个字符串数组。它找到所有新行字符并使用它们将输入拆分为所述数组。这意味着正则表达式不存在要匹配的新行。
使用-Raw
参数对这个命令的轻微变化修复了我的问题。
(Get-Content file.txt -Raw).replace(",`r`n", [System.Environment]::NewLine) | Set-Content file2.txt
Run Code Online (Sandbox Code Playgroud)