【发布时间】:2017-08-31 21:05:42
【问题描述】:
是否有 Java 库 - 可以进行拼写检查。
我有一个 ArrayList of Categories - 这是一个单词列表 {Fox,Lion,Wolf,Snake}。这个列表可能很大。
程序将要求用户输入“动物”:如果用户犯了拼写错误,例如插入“Fix”或“Loin”..
有没有办法将输入与列表的元素进行比较,找到最接近的相似性,并在程序的其余部分使用相应的元素而不是拼写错误的输入。
【问题讨论】:
标签: java
是否有 Java 库 - 可以进行拼写检查。
我有一个 ArrayList of Categories - 这是一个单词列表 {Fox,Lion,Wolf,Snake}。这个列表可能很大。
程序将要求用户输入“动物”:如果用户犯了拼写错误,例如插入“Fix”或“Loin”..
有没有办法将输入与列表的元素进行比较,找到最接近的相似性,并在程序的其余部分使用相应的元素而不是拼写错误的输入。
【问题讨论】:
标签: java
您可能正在寻找两个字符串之间的Levenshtein Distance。距离越长,字符串越不相似。
Apache commons 有一个实现:https://commons.apache.org/proper/commons-text/javadocs/api-release/org/apache/commons/text/similarity/LevenshteinDistance.html
【讨论】:
如果它只是一个动物列表,那么您可以编写自己的代码来检查单词是否在列表中、它的长度、匹配字符的数量等。
【讨论】: