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