锁定。这个问题及其答案是 locked 因为这个问题是题外话但具有历史意义。它目前不接受新的答案或互动。
我已经用 PHP 为自己制定了这个解决方案,但我很好奇如何以不同的方式完成它 - 甚至更好。我主要感兴趣的两种语言是 PHP 和 Javascript,但我很想看看今天在任何其他主要语言(主要是 C#、Java 等)中也能以多快的速度完成这项工作。
额外学分
额外加分
很明显,这里的词是“果蝇”,我们很容易找到。您的 search'n'scrape 脚本也可以确定这一点吗?
源文本:http://sampsonresume.com/labs/c.txt
答案格式
最佳答案
GNU 脚本
sed -e 's/ /\n/g' | grep -v '^ *$' | sort | uniq -c | sort -nr
结果:
7 be
6 to
[...]
1 2.
1 -
出现次数大于 X:
sed -e 's/ /\n/g' | grep -v '^ *$' | sort | uniq -c | awk '$1>X'
仅返回长度大于 Y 的单词(在第二个 grep 中放置 Y+1 个点):
sed -e 's/ /\n/g' | grep -v '^ *$' | grep .... | sort | uniq -c
忽略诸如“and、is、the 等”之类的常用术语(假设常用术语在文件“已忽略”中)
sed -e 's/ /\n/g' | grep -v '^ *$' | grep -vf ignored | sort | uniq -c
在处理之前随意去除标点符号(即“John's”变成“John”):
sed -e 's/[,.:"\']//g;s/ /\n/g' | grep -v '^ *$' | sort | uniq -c
在集合/数组中返回结果:它已经像 shell 的数组:第一列是计数,第二列是单词。
关于code-golf - 代码高尔夫 : Quickly Build List of Keywords from Text, 包括实例数量,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/1038252/