首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何构建给定文本中最常用单词的ASCII图表?

如何构建给定文本中最常用单词的ASCII图表?
EN

Stack Overflow用户
提问于 2018-01-03 05:06:24
回答 2查看 0关注 0票数 0

建立一个ASCII图表的最常用的单词在一个给定的文本。

例如:

示例的文本可以在这里找到,“爱丽丝在仙境的历险记”,刘易斯·卡罗尔著

这一具体案文将产生以下图表:

代码语言:javascript
复制
 _________________________________________________________________________
|_________________________________________________________________________| she 
|_______________________________________________________________| you 
|____________________________________________________________| said 
|____________________________________________________| alice 
|______________________________________________| was 
|__________________________________________| that 
|___________________________________| as 
|_______________________________| her 
|____________________________| with 
|____________________________| at 
|___________________________| s 
|___________________________| t 
|_________________________| on 
|_________________________| all 
|______________________| this 
|______________________| for 
|______________________| had 
|_____________________| but 
|____________________| be 
|____________________| not 
|___________________| they 
|__________________| so 

以上图表所依据的频率如下:

代码语言:javascript
复制
[('she', 553), ('you', 481), ('said', 462), ('alice', 403), ('was', 358), ('that
', 330), ('as', 274), ('her', 248), ('with', 227), ('at', 227), ('s', 219), ('t'
, 218), ('on', 204), ('all', 200), ('this', 181), ('for', 179), ('had', 178), ('
but', 175), ('be', 167), ('not', 166), ('they', 155), ('so', 152)]

第二(检查是否实现了完整的规范):

代码语言:javascript
复制
 ________________________________________________________________
|________________________________________________________________| she 
|_______________________________________________________| superlongstringstring 
|_____________________________________________________| said 
|______________________________________________| alice 
|________________________________________| was 
|_____________________________________| that 
|______________________________| as 
|___________________________| her 
|_________________________| with 
|_________________________| at 
|________________________| s 
|________________________| t 
|______________________| on 
|_____________________| all 
|___________________| this 
|___________________| for 
|___________________| had 
|__________________| but 
|_________________| be 
|_________________| not 
|________________| they 
|________________| so 

排行:

代码语言:javascript
复制
Language          Relaxed  Strict
=========         =======  ======
GolfScript          130     143
Perl                        185
Windows PowerShell  148     199
Mathematica                 199
Ruby                185     205
Unix Toolchain      194     228
Python              183     243
Clojure                     282
Scala                       311
Haskell                     333
Awk                         336
R                   298
Javascript          304     354
Groovy              321
Matlab                      404
C#                          422
Smalltalk           386
PHP                 450
F#                          452
TSQL                483     507

数字表示特定语言中最短解的长度。“

只包括小于500个字符的解决方案。语言列表按“严格”方案的长度排序。“

EN

回答 2

Stack Overflow用户

发布于 2018-01-03 13:26:31

LabVIEW 51个节点,5个结构,10个图表

程序从左到右执行:

票数 0
EN

Stack Overflow用户

发布于 2018-01-03 14:34:15

Ruby 1.9, 185

(主要基于其他Ruby解决方案)

代码语言:javascript
复制
w=($<.read.downcase.scan(/[a-z]+/)-%w{the and of to a i it in or is}).group_by{|x|x}.map{|x,y|[-y.size,x]}.sort[0,22]
k,l=w[0]
puts [?\s+?_*m=76-l.size,w.map{|f,x|?|+?_*(f*m/k)+"| "+x}]

可以使用命令行开关,将文件名作为参数传递即可。(即:ruby1.9 wordfrequency.rb Alice.txt)

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/-100007087

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档