Skip to content
/ zaoju Public

生成规则,设置词库,然后你就可以轻松得到一句不严肃的话,或者一首所谓“现代诗”用来投给某个小刊物。

License

Notifications You must be signed in to change notification settings

seahore/zaoju

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

由于本人高三,今年高考之前无暇维护,敬请谅解。

噪句

Build Status Just for Fun

噪句 是一个多自然语言语句成分随机组合系统,简单点说,就是随机造句

使用姿势

  1. 设定生成规则;
  2. 补充随机词库;
  3. 然后你就可以轻松得到一句不严肃的话,或者一首所谓“现代诗”用来投给某个小刊物。

安装

还没到npm上,到时候吧。

使用

噪句API被包含在一个唯一命名空间对象Zaoju中。

如何在网页上运行

(最好在文档末)包含zaoju.js,然后只需要在页面上创建:

  • 一个文本元素,用以输出生成的文字;
  • 几个按钮,特定按钮的onclick调用zaoju.js中的特定API函数,并作适当的异常处理;
  • 几个文本框,用于接受输入以设定词库或生成规则。 示例网站戳此:http://www.med-studios.com/wapp/zaoju

概念与原理

词元

一个词元是一段文字,同时拥有一个或多个标签。 如:

  • 老王,标签有“人物”,“男性”
  • 教室,标签有“地点”,“在学校内”,“可燃”
  • 皮卡丘,标签有“带电”,“非人类”,“黄(颜)色”,“可吸”

词元是一个概念,用代码实现时,一个词元可能并不被某个对象映射。

词库

词库是唯一的,它包含若干个标签数组,每个标签数组里的元素均是拥有该标签的词元的文字内容(字符串)。 如:

  > dict["person"]   < (3) ["老王", "班主任", "你"]   > dict["can-fly"];   < (5) ["飞机", "天鹅", "猪", "心情", "灰尘"]   > dict["brilliant"];   < (Infinity) ["我", "我", "我", ...]

最后两句是插科打诨啦~

生成规则

生成规则是一个数组,其元素按照顺序表示了随机生成的文字应有怎样的规律。 其元素均为至少含有typevalue属性的对象:

  • type,只可能有两个值:"text""tag"
  • value,一个非空字符串 生成文字时,生成函数会依次检查生成规则,若type"text",则直接输出value;若为"tag",则从词库中对应的标签数组里随机选择一个词元输出。

许可

MIT License 版权所有 © 2014-2018 谭视怀 Tan Shihuai

About

生成规则,设置词库,然后你就可以轻松得到一句不严肃的话,或者一首所谓“现代诗”用来投给某个小刊物。

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published