我有一个文件,想要搜索和替换 - 如图所示
My_name group_1 \(TAB)(SPACE)
(TAB)(SPACE)-class {student_1}
My_name group_2 \(TAB)(SPACE)
(TAB)(SPACE)-class {student_1}
My_name group_3 \(TAB)(SPACE)
(TAB)(SPACE)-class {student_3}
请注意 - 在'-class'之前有TAB和SPACE
我正在使用vi。从上面字符串想做这样的事情 -
My_name group_1 -class {student_1}
My_name group_2 -class {student_1}
My_name group_3 -class {student_3}
我尝试搜索并替换为:%s,选择整个文件并执行 - :s /..
但没有成功。你能救我吗?
答案 0 :(得分:0)
首先使用以下命令用一个空格替换所有选项卡:
1,$s/\t/ /g
接下来,搜索两个空格,后跟换行符并删除它们。
1,$s/ \n//g
如果还有更多的尾随空格,您可以通过以下方式删除它们:
s/ \{2,}/ /g
最后一个命令将用一个空格替换2个或更多空格。