随机alpha字符串的坏词表?

时间:2014-10-21 16:04:21

标签: algorithm identifier

我正在编写一个算法来生成一个随机的6个字符的字符串(例如客户代码XDEJQW)。我想确保内部没有和/或令人反感的词汇或字符串。我想我别无选择只能拥有这些坏词的数据库表,对吧?只是看起来很蠢,我必须有一个添加/编辑页面供某人去,其中有一些非常可怕的词。

感谢。

3 个答案:

答案 0 :(得分:0)

不需要表,您可以为此目的使用字符串数组或枚举。优点是您不必发送请求来获取坏字表的记录。性能更好。基本上你可以随机化6个字符的值,直到结果不包含坏词。

答案 1 :(得分:0)

取决于值的目的,你可以改变随机过程以确保没有生成有效的单词..所以如果没有生成有效的单词..令人反感的字符串不会以太......例如..

  • 仅使用辅音
  • 仅使用元音
  • 使用3个连续辅音和3个连续元音
  • 等。
通常,语言的单词由音节组成,发音的音节需要有元音...通常与一个或两个(可能更多)辅音配对,在之前,之后或周围,作为声音bi,ca,doet,if,orget,for等的“修饰符”..如果你可以避免这些“模式” 生成单词的概率很低..

另一方面,如果你想生成可发音的密码,你在辅音和元音之间做相反的交替来产生音节,例如:cidofe,但在这种情况下,你必须根据“坏话“

但是在以太的情况下请记住,如果你要验证..不要只是验证一个完整的单词也尝试过滤掉部分单词,拼写错误或缩写,以避免像SUKMYDIK

这样的事情

答案 2 :(得分:0)

说你有一个禁止的单词列表'。您可以散列它们并存储散列值,而不是存储单词。然后,在制作随机单词时,检查哈希值,而不是单词。