如何通过脚本编辑双语文本?

如何通过脚本编辑双语文本?

我有一列单词,其中英文单词粘在中文单词上,如下所示:

鄙弃********

痛恨*************

(星星代表汉字)

我想写一个脚本来分隔英文单词并将其放在另一个文件中。这样的事情可以通过脚本编写实现吗?

欢迎任何建议。

答案1

当然,由于英语单词使用拉丁字母,而汉语单词不使用拉丁字母,因此只需删除从第一个非拉丁符号开始的行尾即可。

sed 's/[^a-zA-Z ].*//' < source-file >  result-file

答案2

简单地删除除空格、制表符或英文字符之外的每个字符:

sed 's/[^a-zA-Z ]//g' <source >result

请注意使用兼容 unicode 的模式。

您也可以进行进一步的后处理,例如

for i in $(cat result);do echo "$i";done|sort|uniq

将按result字母顺序排序并删除重复项(“the”、“a”和“for”在本文中可能会出现很多次,您可能只需要其中一个)。

答案3

grep -Po '[\x00-\x77]+'  source > justEN.txt

相关内容