2010-09-17 94 views
0

有没有一些图书馆可以找出一个给定的字符串是否包含英语中的“真正的句子”,这意味着它包含英语单词? (这句话不一定是有意义的,但应含有真正的英文单词)检测一个字符串是否包含“真正的句子”?


例如,下面的不是句子(至少在英语:) -

hsgdhjf asdf dsusdf udfhpiew 
+3

“What's。A. Real。Sentence?” ...问威廉沙特纳。 – 2010-09-17 00:43:41

+2

做无色的绿色想法狂怒地睡觉?椎骨沉默无视合法帆,gostak受害者的剂量。马尔可夫链FTW! – Juliet 2010-09-17 00:46:05

+0

已更新的问题,使我的意思更清晰 – Zabba 2010-09-17 00:48:36

回答

3

这是一个未解决的问题,因为计算机不知道什么“有意义”。即使它试图通过检测名词,动词等来解析一个句子,仍然会出现像"colorless green ideas sleep furiously""Buffalo buffalo Buffalo buffalo buffalo buffalo Buffalo buffalo"这样的短语。我怀疑很多人会说这些是句子。

也有分析句子,例如多种方式“时光飞逝像箭一样,果蝇像香蕉”可以解析为:

  • 形容词名词动词名词条;名词动词介词article名词
  • 名词动词介词article名词;形容词名词动词篇名词

只能采取两种方式。

底线:解析自然语言是,并使其感觉更难。

+0

备注:在上面列出的两个解析(还有其他),第一个没有意义,因为据我们所知,没有“时光”such“之类的东西。当然,第一个解析的后半部分确实有意义。 – DMI 2010-09-17 00:55:01

+0

我认为他真正关心的就像将一个知识的所有单词放到一个数组中,并逐一对照词典数据库进行排序,这当然会很慢,但会做他想做的事。 – MaQleod 2010-09-17 00:55:23

+0

是的 - 自问题更新:-)原来的问题是模棱两可的,所以我认为最困难的事情被问到。作为一个方面说明,假设它存储得很好(例如,字典查找不一定很慢)。DAWG) – DMI 2010-09-17 07:56:14

3

可以确保每一个单词使用拼写检查器拼写正确(有很多这样的库,我没有使用过),但是仍然不会告诉你句子是否是语法的。此外,即使英语发音者有一些错误,也可能会认为一个句子是“真实的”,有些词语不在词典中。

要做到这一点,最好的办法仍然是让您的程序向说英语的人显示所指控的句子,并询问他们是否是“真正的句子”。

相关问题