🔍 ไลบรารีตรวจจับคำหยาบภาษาไทย
📖 ภาพรวม
ไลบรารี TypeScript ที่ทรงประสิทธิภาพสำหรับการตรวจจับคำไม่เหมาะสมในภาษาไทย เหมาะสำหรับการตรวจสอบเนื้อหา, ระบบแชท และอื่นๆ
✨ คุณสมบัติเด่น
- 🎯 ตรวจจับอัจฉริยะด้วยการรวมคำนำหน้าและคำหลัก
- 🚫 รายการยกเว้นที่ปรับแต่งได้
- 🔄 อัพเดทรายการคำแบบไดนามิก
- 🛠️ ง่ายต่อการติดตั้งและปรับแต่ง
📦 การติดตั้ง
เลือกตัวจัดการแพ็คเกจที่คุณต้องการ:
# ใช้ npm
npm install @sit-sandbox/thai-bad-words
# ใช้ yarn
yarn add @sit-sandbox/thai-bad-words
🛠️ API อ้างอิง
ฟังก์ชันหลัก
🔍 scanBadWords(input: Record<string,any>): void
// จะ throw error ถ้าพบคำไม่เหมาะสม
scanBadWords("ข้อความ");
scanBadWords(["ข้อความ"]);
scanBadWords({"key":"ข้อความ"});
scanBadWords({
"level1": {
"key1": "ข้อความ",
"key2": {
"level2": [
{
"keyA": "ข้อความ",
"keyB": {
"level3": [
{
"keyX": "ข้อความ",
"keyY": {
"level4": [
{
"key1": "ข้อความ",
"key2": [
{
"keyZ": "ข้อความ",
"level5": {
"keyM": "ข้อความ",
"level6": [
{
"keyP": "ข้อความ",
"level7": [
"ข้อความ",
"ข้อความ",
"ข้อความ"
....
)
➕ addBadWords(newBadWords: string[]): void
addBadWords(["คำ1", "คำ2"]);
🚫 addIgnoreList(newIgnoreWords: string[]): void
addIgnoreList(["คำยกเว้น1", "คำยกเว้น2"]);
➕ addPrefixes(newPrefixes: string[]): void
addPrefixes(["คำนำหน้า1", "คำนำหน้า2"]);
❌ removeBadWords(wordsToRemove: string[]): void
removeBadWords(["คำที่ต้องการลบ"]);
📋 getBadWords(): string[]
const badWords = getBadWords();
🌟 ตัวอย่างการใช้งาน
import { scanBadWords, addBadWords, addIgnoreList } from "@sit-sandbox/thai-bad-words";
// เพิ่มคำที่ต้องการยกเว้น
addIgnoreList(["หีบ", "สัสดี"]);
// เพิ่มคำไม่เหมาะสม
addBadWords(["โง่", "บ้า"]);
// ตรวจสอบข้อความ
try {
scanBadWords("ข้อความที่ต้องการตรวจสอบ");
} catch (error) {
console.log("❌ พบคำไม่เหมาะสม:", error.message);
}
📝 การตั้งค่าเริ่มต้น
🔤 คำนำหน้า
คำนำหน้าที่ใช้ในการรวมคำ:
["กู", "มึง", "ไอ้", "อี", "ไอ", "ผม", "คุณ", "กระผม", "เธอ", "พ่อ", "แม่", "นาย"];
🚫 รายการยกเว้น
คำที่จะข้ามการตรวจสอบ:
["หีบ", "สัสดี", "หน้าหีบ", "ตด"];
📋 คำหลัก
คำไม่เหมาะสมพื้นฐาน (ย่อเพื่อแสดงในคู่มือ):
["ควย", "เหี้ย", "หี", "สัส", "เชี่ย" /* ... และอื่นๆ ... */];
🤝 การมีส่วนร่วม
ยินดีต้อนรับการมีส่วนร่วมจากทุกท่าน:
- 🐛 รายงานข้อผิดพลาด
- 💡 แนะนำฟีเจอร์ใหม่
- 📝 ปรับปรุงเอกสาร
- 🔧 ส่ง Pull Requests
📄 ลิขสิทธิ์
โปรเจคนี้อยู่ภายใต้ MIT License - ดูรายละเอียดเพิ่มเติมได้ในไฟล์ LICENSE
💬 การสนับสนุน
หากคุณมีคำถามหรือต้องการความช่วยเหลือ:
- 📫 เปิด Issue
- 🌟 ให้ดาวโปรเจคถ้าคุณพบว่ามีประโยชน์