首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在Java中分析一个字符串,以便判断它是一个单词还是完全的胡言乱语?

如何在Java中分析一个字符串,以便判断它是一个单词还是完全的胡言乱语?
EN

Stack Overflow用户
提问于 2015-01-30 12:58:45
回答 2查看 1.5K关注 0票数 3

我需要分析Java中的字符串,以便判断它是否包含乱七八糟的内容。

例如:"asdasx123ax“-胡言乱语"dsjkklcq”-胡言乱语“12 that”-胡言乱语-不是胡言乱语(请注意,它不必是字典中的一个真实单词,就可以被视为“非胡言乱语”)“卡拉特科”--而不是胡言乱语。

基本上,我将分析域名,我想要的算法,将给我的概率,一个特定的域名是垃圾/健壮/胡言乱语的域名。

所以我更多的是看键盘捣碎或者像猫一样乱打字。

我关注的是英语。我会对一个不能100%精确的算法感到满意,如果它有时出错,如果成功检测到胡言乱语的概率(我在上面定义它的概率)> 0.6,我会认为它是一个可行的算法,以满足我的需要。

也许Java中有解决这个问题的库或算法?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-01-30 13:28:24

对于英语来说,我是这样计算每个单词的可信度的:

  • 合理元音/辅音比奖励点数
  • 扣点表示数字的存在
  • 常见字母组合存在的奖励点("ee“、"oo”、"ey“、"th”、"ch“、"sh”、"qu")
  • 为常见的键盘-混合组合("asdf“、"qwer”、"q“,后面跟着"u”以外的任何事物)减去点,等等。

然后我会得到一长串的单词,并微调它。

票数 3
EN

Stack Overflow用户

发布于 2015-01-30 13:31:52

因为你试图把英语和胡言乱语区分开来,所以试着用某种形式的近似字符串匹配算法将这个单词与英语词典相匹配。

你也可以给upp带来一些关于单词应该如何构造的规则,例如,一连串的辅音或元音太多都是胡言乱语。

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

https://stackoverflow.com/questions/28236477

复制
相关文章

相似问题

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