微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

vim – 将多行组合成一行

我有一个像输入的xml文件的用例
Input:
<abc a="1">
   <val>0.25</val>
</abc> 
<abc a="2">
    <val>0.25</val>
</abc> 
<abc a="3">
   <val>0.35</val>
</abc> 
 ...

Output:
<abc a="1"><val>0.25</val></abc> 
<abc a="2"><val>0.25</val></abc>
<abc a="3"><val>0.35</val></abc>

我在输入格式的文件中有大约200K行,如何快速将其转换为输出格式.

在vim你可以这样做
:g/<abc/ .,/<\/abc/ join!

通常:在加入之前,join会在每行的末尾添加一个空格,但是!抑制.

一般来说,我建议在Python,Ruby或Perl等语言中使用适当的XML解析库来操作XML文件(我推荐使用Python ElementTree),但在这种情况下,使用正则表达式解决方案就足够了.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐