使用linux工具将行从一种格式转换为另一种格式

时间:2018-07-17 17:00:19

标签: regex linux sed grep

让我们考虑以下原始格式:

| Node[42]{id:42} | Node[208813]{id:208813} | Node[292823]{id:292823} |

可以使用Linux工具将其映射到:
42,208813,292823

这些数字是从[]收集的数字。
请注意,我正在搜索通用方法以获取更多列,例如:
| Node[42]{id:42} | Node[208813]{id:208813} | Node[292823]{id:292823} | Node[1]|进入

42,208813,292823,1
另请注意,{id:292823}是可选的(不是强制性的)。

有人可以帮忙吗?

1 个答案:

答案 0 :(得分:-1)

使用sed:

sed 's/[^[]*\[//;s/\][^[]*\[/,/g;s/].*//' file

输出:

42,208813,292823

请参阅:man sedThe Stack Overflow Regular Expressions FAQ