源於一道文字遊戲的題目

獨立博客地址:http://cxh.me/2015/01/05/a-word-puzzle/git

起源是這樣一道題目:github

因而想到經過word dict來算一下:web

先去下載了中文詞庫:spa

git clone git@github.com:ling0322/webdict.git 

而後去掉詞頻信息:.net

awk '{ if (length($1)==2) print $1}' webdict_with_freq.txt >webdict.txt

先按照出現位置來正則過濾候選集,而且去掉大/日/風/思四個字:code

grep '^大.*' webdict.txt| sed 's/大//g' >da.txt grep '^日.*' webdict.txt| sed 's/日//g' >ri.txt grep '.*風$' webdict.txt| sed 's/風//g' >feng.txt grep '.*思$' webdict.txt| sed 's/思//g' >si.txt 

以後的事情就頗有意思了,每次join兩個文件,由於大/日/風/思四個字是沒有交集的,因此結果就是要求的字:blog

comm -12 <(sort da.txt|uniq ) <(sort ri.txt|uniq ) >da_ri.txt comm -12 <(sort feng.txt|uniq ) <(sort da_ri.txt|uniq ) >da_ri_feng.txt comm -12 <(sort si.txt|uniq ) <(sort da_ri_feng.txt|uniq ) >da_ri_feng_si.txt

最後的兇手答案只有一個:get

謝謝觀看~。博客

參考文獻:

1 ] LINUX Shell 下求兩個文件交集和差集的辦法, http://blog.csdn.net/autofei/article/details/6579320it

相關文章
相關標籤/搜索