过滤或者查找敏感词(DFA 算法)

刚刚发布了一个laravel过滤敏感词的包,采用 DFA 算法,可能还存在着一些不完善的地方,各位大佬如有发现可以指正一下,开发包前借鉴了前人的一些算法,发现其有些不足的地方(如:过滤敏感词中存在包含的关系::敏感和敏感词),然后进行了改造;

github : nelsonkti/sensitive-word

Installation

$ composer require nelsonkti/sensitive-word

Laravel

config/app.php

'providers' => [
    Nelsonkti\SensitiveWord\SensitiveWordServiceProvider::class,
],

'aliases' => [
    'SensitiveWord' => Nelsonkti\SensitiveWord\SensitiveWord::class,
],

Usage

基本使用:

use Nelsonkti\SensitiveWord\Facades\SensitiveWord;

$path = './word.txt'

$content = '敏感,敏感词需要过滤'; #检查内容
$filename = '/txt/sensitive-words.txt'; #敏感词文件路径

SensitiveWord::searchWord($content, $filename);
# 返回: array('敏感', '敏感词');

SensitiveWord::filterWord($content, $filename);
# 返回: *****需要过滤

注意:
word.txt 内容需要换行;如下:
敏感词
敏感

License

sensitive-word is licensed under The MIT License (MIT).

本作品采用《CC 协议》,转载必须注明作者和本文链接
萧风
《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。
《L04 微信小程序从零到发布》
从小程序个人账户申请开始,带你一步步进行开发一个微信小程序,直到提交微信控制台上线发布。
讨论数量: 0
(= ̄ω ̄=)··· 暂无内容!

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!