假设我有一个文本文件,其中的行被故意包裹。每个包裹的行以反斜杠字符'\'结尾,然后换行。例如:
foo.bar=blah,blah,blah,bl\
ah,blah
foo2.bar=blah,blah,blah,b\
lah,blah
我想解开这些行,使其成为:
foo.bar=blah,blah,blah,blah,blah
foo2.bar=blah,blah,blah,blah,blah
目前,当我尝试使用以下命令执行此操作时,我没有匹配,因此没有更改:
( Get-Content .\somefile.txt | Out-String ) -replace '\\\n',''
如果我使用'\'或'\ n',它会替换反斜杠或换行符,但如果一起使用则不会产生匹配。
答案 0 :(得分:2)
如果它是Windows样式行的结尾,则它是回车符和换行符,因此0xD0XA
或\r\n
。如果你想要处理这两种可能性:
-replace '\\\r?\n',''
基本上,反斜杠\\
后跟一个可选的回车\r?
,后跟一个换行符\n
。