vasart / naughty-words
不雅词汇列表
1.2.3
2022-07-24 13:46 UTC
Requires
- php: >=7.0
- ext-mbstring: *
Requires (Dev)
- phpunit/phpunit: ^9.5
README
一个使用 PHP 和 Composer 的不雅、低俗、淫秽及其他不良词汇列表。
明显警告:这些列表包含许多人可能会觉得冒犯的内容。(但这就是重点!)
开始之前
如果您认为实现自动过滤不良词汇是一个好主意,您应该首先查看这些文章
总结来说,这个库绝不能作为100%去除应用中淫秽语言的手段。人们总会找到绕过过滤的方法。如果您需要处理不良词汇,您需要手动控制。像这样的工具旨在协助人工审核,而不是替代它。
此库可能有用的用例
- 当发现潜在的坏词时,在用户输入验证后请求版主批准。
- 只有当发现坏词的精确匹配时才拒绝用户输入。
(当坏词多一个任意字母时,这很容易被绕过,以便精确匹配不会成功。)
安装
composer require vasart/naughty-words
使用方法
接收一个不雅词汇的纯文本列表
use VasArt\NaughtyWords\NaughtyWords; $naughtyWordsEn = NaughtyWords::getForLanguage('en');
在此处 getForLanguage()
调用中的字符串 'en'
是为所选语言的不雅词汇文件名。请参阅 语言 部分中可用的语言列表。
使用内置验证器
use VasArt\NaughtyWords\Validator; $text = 'some user input with potentially bad words'; $naughtyWordsValidator = new Validator( [ 'en', 'ru' ] ); $naughtyWords = $naughtyWordsValidator->findNaughtyWords( $text ); var_export($naughtyWords); // [ 'en' => 'word', 'ru' => false ]
要查看内置验证器是如何工作的,您应该检查
- ValidatorTest 类中的测试用例;
- WordsList 类中构建的正则表达式。
语言
其他安装选项
如果您需要在 npm
项目中使用不雅词汇,您可以使用 naughty-words 包来安装词汇列表。
许可协议
代码、配置和项目描述文件根据 GNU GPL 3.0 许可,请参阅 LICENSE。
词汇列表根据 Creative Commons Attribution 4.0 International License 许可,请参阅 LICENSE.words。© 2012–2020 Shutterstock, Inc。