我正在尝试操纵ZDT格式的词汇表,即:Traditional Characters \t Simplified Characters \t Pinyin \t English \n
。我想在行的开头摆脱传统字符,所以我试图用sed 's/^[^\t]*\t//g' input.txt > output.txt
删除它们但是这让我无法接近我想要的结果,因为在某些行中,一切都在英语部分的某个地方被删除,在其他行中没有任何内容被删除,我无法找出一个模式。
我认为RegEx是正确的,因为我已经测试了here,而Sublime Text 2也按预期使用它。这有什么问题?
编辑:
input.txt
http://pastebin.com/fRemVPyT的开头
output.txt
http://pastebin.com/EJkszFNF
答案 0 :(得分:2)
并非所有sed
版本都喜欢\t
。尝试使用文字制表符。您可以创建一个包含以下标签的bash
变量:
export TAB=$'\t'
也许是这样的:
sed "s/^[^$TAB]*$TAB//g" input.txt > output.txt