我有两份文件wordlist.txt和text.txt。
第一个文件wordlist.txt,包含大量的汉语、日语和
韩语单词,例如:
你
你们
我
第二个文件,包含很长的段落,例如:
你们要去哪里?
卡拉OK好不好?
我想创建一个新单词列表(),但是它应该只包含其中至少有一次在上述输出文件应显
示如下:
你
你们
“我”未在此列表中找到,因为它从未在...
我想找到一种非常快速的方法来创建这个列表,它只包含第二个文件中的第一个文件中的行。
我知道一种简单的Bash方法来检查每一行看看它是否在使用:
a=1
while read line
do
c=`grep -c $line text.txt`
if [ "$c" -ge 1 ]
then
echo $line >> wordsfound.txt
echo "Found" $a
fi
echo "Not found" $a
a=`expr $a + 1`
done < wordlist.txt
但这是一个很长的列表,这个过程需要很多小时。必须有更快的解决办法。这里有一个考虑:
由于这些文件中包含CJK字母,所以它们可以被认为是一个巨大的字母表,大约有8000个字母。所以几乎每个单词都有相同的字符。例如:
我
我们
由于这个事实,如果“我”在,“我们”也没有
出现,这是非常合乎逻辑的。一个更快的脚本可能首先检查“我”,当发现它不存在时,将避免检查后续包含的每个单词。也包含在如果有大约8000个独特
的字符出现在,那么脚本就不需要检查那
么多行了。
创建列表的最快方法是什么,它只包含在第一个文件中的单词,而这些单词也在第二个文件中的某个地方找到?
相似问题