معرفی ReX.js v1.0.0 - یک کتابخانه همراه برای RegEx نوشته شده در TypeScript

ترجمه و تالیف : عرفان کاکایی
تاریخ انتشار : 13 خرداد 98
خواندن در 1 دقیقه
دسته بندی ها : جاوا اسکریپت

ReX.js یک کتابخانه کمکی نوشته شده در TypeScript است، که برای نوشتن عبارات معمولی (Regular Expressions) ساخته شده است. اخیرا نسخه 1.0.0 از ReX.js، یعنی اولین نسخه اصلی آن منتشر شد. ReX.js که در TypeScript نوشته شده است، یک تکمیل خودکار و تجربه توسعه دهی عالی میان ویرایشگرهای کد متنوع فراهم می‌کند. یکی از برتری‌های اصلی استفاده از ReX.js، قابلیت آن برای سندنگاری تمام خط‌های کد، بدون نیاز به زحمت زیاد است.

آناتومی ReX.js v1.0.0

ReX.js درست به اندازه یک namespace شامل این ماژول‌ها، ساختاربندی شده است:

  • Matcher: Matcher کلاس مورد استفاده برای ساخت و تطبیق‌دهی عبارات است.
  • Replacer: Replacer کلاس مورد استفاده برای ساخت و استفاده از عبارات جایگزینی (Replacement) است.
  • Operation: این کلاس نمایانگر یک عملیات پایه است که به سازنده (Constructor) عبارت اعمال می‌شود.
  • Parser: کلاس parser برای parse کردن و اجرای Regexpها استفاده می‌شود. این کلاس توسط Matcher به کار برده می‌شود و polyfillهایی را برای گروه‌های نامگذاری شده پیاده‌سازی می‌کند.
  • ReXer: این کلاس برای ساخت Regexpها استفاده می‌شود. کلاس‌های Matcher و Replacer از ReXer به ارث برده می‌شوند.

صفحه گیت‌هاب ReX.js می‌گوید که احتمال استفاده از کلاس‌های Matcher و Replacer برای توسعه دهندگان بیشتر است. کلاس‌های دیگر به احتمال زیاد برای قابلیت گسترش و موقعیت‌های خاص استفاده خواهند شد.

استفاده پیشرفته از ReX.js v1.0.0

فراتر از عملیات‌های Regex پایه، ReX.js همچنین گزینه‌هایی را برای گسترش عملکرد خود فراهم می‌‌کند.

عملیات‌ها (Operations) و کانال‌ها (Channels)

هر متدی که در ReX.js استفاده می‌شود، فقط یک عملیات جدید به ReXer اضافه می‌کند. یک عملیات می‌تواند سپس با استفاده از متد رشته‌بندی (stringify) خود، رشته‌بندی شود.

یک مفهوم به نام کانال‌ها، از عبارات توابع تو در تو برای ساخت Regexpهای خطی معرفی شده است. خود کانال‌ها هم به عنوان یک آرایه در ReXer ذخیره شده‌اند.

قطعه کدها (Snippets)

اگر می‌خواهید از هر نوع پیکربندی عملیاتی مجددا استفاده کنید، قطعه کدهایی برای آن در دسترس هستند. قطعه کدها گزینه‌هایی برای اختصاص‌دهی پیکربندی داده شده به یک نام، برای استفاده در آینده فراهم می‌کنند.

متدها و گسترش‌ها (extensions)

متدها، راه‌هایی برای استفاده مجدد از عملیات‌های سفارشی، و اعمال کردن آن‌ها هستند، و گسترش‌ها هم فقط آرایه‌هایی متشکل از متدها می‌باشند.

نصب ReX.js v1.0.0

ReX.js بر روی NPM به عنوان یک پکیج در دسترس است. شما می‌توانید با استفاده از این کد آن را به پروژه از پیش موجود خود اضافه کنید:

npm install @areknawo/rex

اگر از Yarn استفاده می‌کنید، از این دستور استفاده کنید:

yarn add @areknawo/rex

برای جزئیات و سندنگاری‌های بیشتر، صفحه ReX.js را بر روی گیت‌هاب مشاهده نمایید.

منبع