lao-word-splitter
v1.4.0
Published
A utility to split Lao language sentences into individual words
Maintainers
Readme
Lao Word Splitter
ເຄື່ອງມືສຳລັບແຍກປະໂຫຍກພາສາລາວ ອອກເປັນແຕ່ລະຄຳອີງຕາມໂຄງສ້າງພາສາ.
A utility to split Lao language sentences into individual words based on syllable structure rules.
ການຕິດຕັ້ງ / Installation
npm install lao-word-splitterການໃຊ້ງານ / Usage
import { splitLao } from 'lao-word-splitter';
// Example 1: Basic usage
const sentence = "ສະບາຍດີຕອນເຊົ້າ";
const words = splitLao(sentence);
console.log(words); // ["ສະ", "ບາຍ", "ດີ", "ຕອນ", "ເຊົ້າ"]
// Example 2: Mixed Lao and non-Lao text
const mixedText = "ພາສາລາວ Lao language 101";
const mixedWords = splitLao(mixedText);
console.log(mixedWords); // ["ພາ", "ສາ", "ລາວ", "Lao", "language", "101"]ຄຸນສົມບັດ / Features
ແຍກປະໂຫຍກພາສາລາວ ອອກເປັນແຕ່ລະຄຳ
ຮອງຮັບເນື້ອຫາທີ່ເປັນພາສາລາວປົນກັບອັກສອນອື່ນໆ
ບັນຈຸກົດເກນທາງດ້ານພາສາສາດ ເພື່ອແຍກຄຳພາສາລາວທີ່ຖືກຕ້ອງ
Splits Lao sentences into individual words
Supports mixed Lao and non-Lao text
Implements linguistic rules for correct Lao word segmentation
ວິທີການທຳງານ / How It Works
ຟັງຊັນນີ້ໃຊ້ກົດເກນທາງດ້ານໂຄງສ້າງພະຍາງຄຳພາສາລາວເພື່ອກຳນົດຂອບເຂດຂອງຄຳ, ໂດຍອີງໃສ່:
- ຕົວອັກສອນທີ່ບົ່ງບອກການເລີ່ມຕົ້ນຄຳໃໝ່ (ເຊັ່ນ: ເ, ແ, ໂ, ໄ, ໃ)
- ຕົວອັກສອນກາງຄຳ (ສະຫຼະ, ວັນນະຍຸດ)
- ໂຄງສ້າງພິເສດ (ເຊັ່ນ: ກວ, ຫວ)
- ການຕັດແບ່ງເມື່ອມີການປ່ຽນແປງລະຫວ່າງພາສາລາວ ແລະ ພາສາອື່ນ
This function uses Lao syllable structure rules to determine word boundaries, based on:
- Characters indicating the start of new words (e.g., ເ, ແ, ໂ, ໄ, ໃ)
- Mid-word characters (vowels, tone marks)
- Special structures (like digraphs: ກວ, ຫວ)
- Segmentation at transitions between Lao and non-Lao text
ປະສິດທິພາບ / Performance
ອານຸພາບການຄຳນວນ (Time Complexity): O(n) ໝາຍຄວາມວ່າໄວຂອງຟັງຊັນຂຶ້ນຢູ່ກັບຄວາມຍາວຂອງປະໂຫຍກທີ່ປ້ອນເຂົ້າໄປ. ການແຍກປະໂຫຍກແມ່ນໄວ ແລະ ມີປະສິດທິພາບເນື່ອງຈາກການແຍກເກີດຂຶ້ນພຽງແຕ່ໃນຮອບດຽວເທົ່ານັ້ນໂດຍບໍ່ມີຮອບວົນຊ້ອນກັນ.
Time Complexity: O(n) where n is the length of the input sentence. This means the algorithm's performance scales linearly with the input size. The segmentation is fast and efficient as it processes the text in a single pass without nested loops.
ລິຂະສິດ / License
MIT
