有没有一种方法可以在 Power Shell 中用一个循环更改多行
Is there a way to change multiple lines with one loop in Power Shell
我有一个这样的文本文件:
信息
:
我去了巴黎
xxx
yyy
zzz
信息
:
我去了意大利
aaa
bbb
ccc
我希望这个文本文件是这样的
信息: 我去了巴黎
xxx
yyy
zzz
信息:我去了意大利
aaa
bbb
ccc
所以会像;
1- 找到每个冒号
2-(一种方式)双击退格按钮并移动到上一行,然后按空格键 + 冒号 + 空格键 + 删除按钮,这将使那些巴黎和意大利行到上一行。
使用regex-based :
感谢 Santiago Squarzon 帮助简化正则表达式和替换。
# Outputs to the screen; pipe to Set-Content to save back to a file as needed.
(Get-Content -Raw file.txt) -replace '(?m)(?<=^info)(?:\r?\n){2}:(?:\r?\n){2}', ' : '
有关正则表达式的解释以及使用它进行试验的能力,请参阅 this regex101.com page。
我有一个这样的文本文件:
信息
:
我去了巴黎
xxx
yyy
zzz
信息
:
我去了意大利
aaa
bbb
ccc
我希望这个文本文件是这样的
信息: 我去了巴黎
xxx
yyy
zzz
信息:我去了意大利
aaa
bbb
ccc
所以会像;
1- 找到每个冒号
2-(一种方式)双击退格按钮并移动到上一行,然后按空格键 + 冒号 + 空格键 + 删除按钮,这将使那些巴黎和意大利行到上一行。
使用regex-based
感谢 Santiago Squarzon 帮助简化正则表达式和替换。
# Outputs to the screen; pipe to Set-Content to save back to a file as needed.
(Get-Content -Raw file.txt) -replace '(?m)(?<=^info)(?:\r?\n){2}:(?:\r?\n){2}', ' : '
有关正则表达式的解释以及使用它进行试验的能力,请参阅 this regex101.com page。