仅删除特定的行新行/换行符 [英] Remove new line / line break characters only for specific lines

查看:146
本文介绍了仅删除特定的行新行/换行符的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有以下的输出:

02:01:31
OFFLINE
02:02:31
ONLINE

和我想它变成了:

02:01:31 OFFLINE
02:02:31 ONLINE

我发现删除所有换行/线的方式与打破sed的':一个; N; $ BA; S / \\ n / / g的!然而它给我接下来这是不是真的,我追求的:

I found a way of removing all newline / line breaks with sed ':a;N;$!ba;s/\n/ /g' however it gives me what follows which is not really what I'm after:

02:01:31 OFFLINE 02:02:31 ONLINE

问:我如何删除换行符/换行符只匹配某种模式(在这种情况下该行 [0-9] 就足够了?

Q: How can I remove newline / line breaks only for lines that match a certain pattern (in this case [0-9] would be enough?

PS:这并不一定与 SED 只要我可以申请一个正则表达式的行的匹配

PS: It doesn't have to be with sed as long as I can apply a regex pattern to the matching of lines

推荐答案

请您 S / \\ n / / G S / \\( [0-9] \\ S * \\)\\ N / \\ 1 / G (数字后面加一个换行符非空白的任何金额)。

Make your s/\n/ /g be s/\([0-9]\S*\)\n/\1 /g (a digit followed by any amount of non-whitespace followed by a newline).

这篇关于仅删除特定的行新行/换行符的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆