An open API service indexing awesome lists of open source software.

https://github.com/ponlawat-w/thai-spelling-fix

การตรวจจับและแก้ไขการพิมพ์ที่ไม่เป็นไปตามหลัก (เช่น สระเอสองตัวแทนที่ควรจะเป็นสระแอ การันต์มาก่อนสระอุ เป็นต้น) โดยใช้นิพจน์ปรกติ (regular expression) | Detection and correction of Thai text common misspelling using regular expression
https://github.com/ponlawat-w/thai-spelling-fix

regular-expression spelling-correction thai thai-language

Last synced: 3 months ago
JSON representation

การตรวจจับและแก้ไขการพิมพ์ที่ไม่เป็นไปตามหลัก (เช่น สระเอสองตัวแทนที่ควรจะเป็นสระแอ การันต์มาก่อนสระอุ เป็นต้น) โดยใช้นิพจน์ปรกติ (regular expression) | Detection and correction of Thai text common misspelling using regular expression

Awesome Lists containing this project

README

          

# thai-spelling-fix

ฐานข้อมูลและเครื่องมือสำหรับการตรวจจับและแก้ไขการพิมพ์ที่ไม่เป็นไปตามหลัก (เช่น สระเอสองตัวแทนที่ควรจะเป็นสระแอ การันต์มาก่อนสระอุ เป็นต้น) ตรวจสอบและแก้ไขโดยใช้นิพจน์ปรกติ (regular expression)

## `validations.csv`

ไฟล์สำหรับรวบรวมพจน์การตรวจจับและการแทนที่ โดยมีฟิลด์ดังนี้
- `find`: พจน์ของ regular expression สำหรับการตรวจหาการพิมพ์ที่ไม่ถูกต้อง
- `replace`: การแทนที่ของพจน์ใน `find`
- `type`: ประเภทของการตรวจจับ
- `1` - การใช้อักขระและลำดับการพิมพ์
- `2` - การเว้นวรรค

## `test-cases.csv`

ไฟล์สำหรับรวบรวมข้อความที่ใช้ในการทดสอบพจน์ใน `validations.csv` โดยมีฟิลด์ดังนี้
- `incorrect`: ข้อความการพิมพ์ที่ไม่ถูกต้อง
- `correct`: ข้อความการพิมพ์ที่ถูกต้อง

---

## การทดสอบ

การทดสอบพจน์ที่ระบุใน `validations.csv` โดยข้อความใน `test-cases.csv` ถูกพัฒนาบนภาษาจาวาสคริปต์ผ่านไลบรารีทดสอบ mocha ในโฟลเดอร์ `test` หลังจากโคลนแล้ว ให้ติดตั้งแพกเกจที่เกี่ยวข้องด้วย `npm install` และทำการทดสอบด้วยคำสั่ง `npm test`

การทดสอบแบ่งออกเป็น 3 ขั้นตอนหลัก ๆ
1. ทุกข้อความในฟิลด์ `incorrect` ของไฟล์ `test-cases.csv` ถูกตรวจจับได้ตรงกับพจน์ใด ๆ ของ `validations.csv`
2. ทุกข้อความในฟิลด์ `correct` ของไฟล์ `test-cases.csv` ไม่ตรงกับพจน์ใด ๆ ของ `validations.csv`
3. ข้อความในฟิลด์ `incorrect` ของไฟล์ `test-cases.csv` ที่ถูกแทนที่ด้วยพจน์จาก `validations.csv` แล้ว ตรงกับข้อความในฟิลด์ `correct` ของแถวเดียวกัน

---