屏蔽字判断

用到了和谐宝典
简单的使用如下:

  1. gem "harmonious_dictionary",然后bundle install
  2. rails g harmonious_dictionary:setup创建必要的配置文件
  3. config/harmonious_dictionary文件夹下生成两个文件chinese_dictionary.txtenglish_dictionary.txt。也可以到 https://github.com/downloads/wear/harmonious_dictionary/dictionaries.zip 下载。
  4. rake harmonious_dictionary:generate生成序列化的词库:harmonious.hash(对应中文)harmonious_english.yml
  5. model文件中,就可以使用validate_harmonious_of *attrbutes来验证字段是否有屏蔽字了

常用的几个方法

  • 检查输入是否包含敏感词: HarmoniousDictionary.clean?(your_input)

  • 检查包含的敏感词: HarmoniousDictionary.harmonious_words(your_input)

  • 替换包含的敏感词为*: HarmoniousDictionary.clean(your_input)

  • 自定义替换的字符,在config/initializer文件夹下创建一个harmonious_dictionary.rb

      module HarmoniousDictionary
       def self.clean_word_basic(word)
          clearn_words = "`"
          word.size.times{  clearn_words << "*" }
          clearn_words << "`"
        end
      end
    

重写self.clean_word_basic(word)方法即可

你可能感兴趣的:(屏蔽字判断)