我正在尝试编写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