检查字符串是否是一个语法上合法的句子?

5

有没有一种方法可以检查一个字符串是否代表一个英文句子?我目前正在查看java包,但我还没有找到可以实现它的任何内容。

例如:

the weather is good (valid)
the good is weather (invalid) 

有什么想法吗?

谢谢


6
你如何定义一个句子? - nullpotent
1
@pst 我应该理解这个吗? - 11684
1
我的意思是,如果这是一个有效的句子: 例如,天气很好(有效) 好的是天气(无效) - user1663930
1
词性标注。您知道这里曾经有类似的问题。他们列出了可用的Java库清单。https://dev59.com/dHE95IYBdhLWcg3wft1w您可以在那里寻求帮助。 - Gilbert V
2
我已经完成了词性标注。我需要知道我得到的结果是否构成一个有效的句子。 - user1663930
显示剩余6条评论
2个回答

1
你真正需要的是NLP解析器(语法分析)。 这个是用Java编写的,非常棒。

1
我有这个,但我不确定它是否能识别句子是否有效。它可以进行标记。 - user1663930

0

虽然我知道OP提到了Java,但我想提供的是微软Office套件中有一个有限的语法检查引擎,旨在执行非常高级别的更正/建议,针对我想象中相当简化的句子模式集合,例如在典型的办公室通信中发现的那些。我认为它并不打算详尽无遗或像完整的英语分析工具一样,但在有限的形式下可能会起到基本的作用。

检查通过COM暴露,通过主机Office应用程序的Application对象调用CheckGrammar方法。您提供要检查的文本。除了片段之外,它还可以识别几个问题,例如时态和数量不一致,因此您可能需要完善它提供的结果。它远非完美,但确实尽力而为 :)


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接