0
我正在尝试编写sed
脚本将缩进转换为等效的括号。将缩进转换为括号
例如,括号内应放置在此
A
A1
A1a
A2
B
B1
,使得它看起来像这样
(A
(A1
(A1a))
(A2))
(B
(B1))
或也许这(一旦括号放在空格不再重要) :
(A (A1 (A1a)) (A2))
(B (B1))
假设为了简化该
- 只有一个令牌在每一行,
- 压痕发生的标签,
原理看起来非常简单:
- 令牌如果压痕深度之前加一个左括号高于前一行;
- 计算当前行多于下一行的制表符的数量,加1并在令牌后放置多个右括号。
但是,教sed
一条线的改变取决于另一条线的外观对我来说似乎并不简单。
@Cyrus感谢,固定。 – user66554
@Cyrus nope。我可能应该通过从第一个中删除换行符创建第二个示例,而不是从头开始输入。 – user66554