我正在嘗試編寫sed
腳本來將LaTeX編碼表轉換爲製表符分隔表。我怎樣才能讓sed刪除``後跟任何東西?
爲此,我需要將&
轉換爲\t
並刪除之前有\
的任何內容。
這是我到目前爲止有:
s/&/\t/g
s/\*/" "/g
第一行按預期工作。在第二行中,我嘗試用空格替換\
後面的任何內容,但不會改變其中包含\
的行。
任何建議表示讚賞。另外,你能簡單解釋一下建議的腳本「說」什麼嗎?我是sed
的新手,這對學習過程非常有幫助!
感謝
我正在嘗試編寫sed
腳本來將LaTeX編碼表轉換爲製表符分隔表。我怎樣才能讓sed刪除``後跟任何東西?
爲此,我需要將&
轉換爲\t
並刪除之前有\
的任何內容。
這是我到目前爲止有:
s/&/\t/g
s/\*/" "/g
第一行按預期工作。在第二行中,我嘗試用空格替換\
後面的任何內容,但不會改變其中包含\
的行。
任何建議表示讚賞。另外,你能簡單解釋一下建議的腳本「說」什麼嗎?我是sed
的新手,這對學習過程非常有幫助!
感謝
假設你正在運行此作爲sed腳本,並在命令行中沒有直接:
s/\\.*/ /g
說明:
\\
- 雙反斜線匹配一個反斜槓(單個\
被解釋爲「逃避以下字符」,後跟.*
(.
) - 匹配任何單個字符,*
- 任意多次S)。
您需要轉義反斜槓,因爲它是一個特殊字符。
如果您想表示您需要使用「任何字符」。 (一期)
第二表達應該是:
s/\\.//g
我希望我理解你的意圖,你想,如果你想刪除所有字符反斜槓之後剝離的字符, 在反斜槓後添加一個星號(*) 。
完美! (並感謝解釋) – KennyPeanuts