easy-persian-text-normalizer
v1.0.0
Published
High-performance Persian text normalizer based on DDD and Clean Code principles
Maintainers
Readme
Persian Text Normalizer
کتابخانه فوقسریع و بهینهشده برای نرمالسازی متنهای فارسی، طراحی شده بر اساس اصول Domain-Driven Design (DDD) و Clean Code.
ویژگیها (Features)
- پشتیبانی از Tree-Shaking: معماری ماژولار به شما اجازه میدهد تنها توابعی را وارد کنید که نیاز دارید، در نتیجه حجم نهایی باندل (Bundle Size) در فریمورکهایی مثل Nuxt 3 و Angular به شدت کاهش مییابد.
- بدون وابستگی (Zero Dependencies): سبک و سریع با استفاده از Regex های بهینهشده در موتور V8.
- تایپینگ قوی (Strongly Typed): توسعه یافته با TypeScript.
- پشتیبانی از CommonJS و ES Modules.
🚀 راهنمای نصب و استفاده
نصب
npm install easy-persian-text-normalizerاستفاده به صورت شیگرا (Facade Pattern)
این روش برای تزریق (Dependency Injection) در پروژههای Angular یا سرویسهای Nuxt 3 عالی است.
import { PersianNormalizer } from 'easy-persian-text-normalizer';
const normalizer = new PersianNormalizer({
removeDiacritics: true,
changeToHalfSpace: true,
numberConvertorType: 'ToEnglish'
});
const cleanText = normalizer.normalize("متن تـــست مـیباشد ۱۲۳");
console.log(cleanText);استفاده از توابع خالص (Tree-Shakeable Pure Functions)
اگر فقط به یک ویژگی خاص نیاز دارید، مستقیماً تابع آن را ایمپورت کنید:
import { toEnglishNumbers, applyHalfSpaceRule } from 'easy-persian-text-normalizer';
const text1 = toEnglishNumbers("۱۲۳۴۵");
const text2 = applyHalfSpaceRule("می روم");