如何最好地实现发誓词处理程序(.NET首选)?

pea*_*ewg 1 .net asp.net spell-checking

对于ASP.NET应用程序,自定义脏话删除/替换器的最佳实践实现方法是什么?

如果这是一个数据表解决方案,是否有免费资源来获取数据?(类似于查找可导入系统进行拼写检查的公共字典表)

Sim*_*son 6

获胜的唯一方法就是不玩.

考虑以下句子:

"爱德华二世是少数几个生下一个有记录的混蛋的君主之一."

Bastard是一个边界线咒骂词,但在这种情况下,它是一个完全明智的术语.

还要考虑:

  • "熔化的渣从坠落处掉了下来."
  • "这只婊子嗅到了另一只狗的背后."

您永远无法构建能够确定用法是否正确的解析器.即使你决定继续前进并且只是把这些话都说出来,但无论如何它们都很容易被颠覆.

问问自己,"Tw*t"真的比"twat"更具攻击性吗?每个人都知道你指的是什么词,每个人都明白这意味着什么.

最终,这个问题的解决方案不是技术问题.真的,你想使用某种人类主持人来摆脱那些发誓的人.人类温和派有一种算法永远不会的设施:它可以运用判断力.使用这种判断远比在这个问题上投入计算机科学更有用.

在这个问题的其他答案中详细讨论了这一点.