CyrefJS
CCyrefJS
EN
بازگشت به مستندات
رشته/از نسخه 1.38.0

tokenize

یک رشته را با استفاده از مرزهای Unicode-aware برای حروف، اعداد، علائم ترکیبی و تغییرات حروف بزرگ و کوچک به tokenهای متنی تقسیم می‌کند.

tokenize(value):string[]

کاراکترهای کلمه

یک کاراکتر زمانی بخشی از token محسوب می‌شود که یک حرف Unicode، عدد Unicode یا mark Unicode باشد. کاراکترهای خارج از این دسته‌ها token فعلی را پایان می‌دهند.

مرز حروف کوچک و بزرگ

وقتی کاراکتر فعلی uppercase باشد، کاراکتر قبلی lowercase یا عدد باشد و کاراکتر بعدی lowercase باشد، یک مرز token ایجاد می‌شود.

دنباله‌های حروف بزرگ

کاراکترهای uppercase پشت سر هم به‌صورت یک دنباله بررسی می‌شوند. طول دنباله و طول prefix قبل از آن برای تعیین مرز استفاده می‌شوند تا در حالت‌های مرتبط، دنباله‌هایی شبیه acronym کنار هم باقی بمانند.

جداکننده‌ها

کاراکترهایی که حرف، عدد یا mark Unicode نیستند، token فعلی را پایان می‌دهند. tokenهای خالی به نتیجه اضافه نمی‌شوند.

پشتیبانی از Unicode

قبل از پردازش، ورودی با Array.from تبدیل می‌شود؛ بنابراین iteration بر اساس code pointهای Unicode انجام می‌شود، نه code unitهای UTF-16. تشخیص نوع کاراکترها نیز با Unicode property escapes انجام می‌شود.

پارامترها

valuestringالزامی

رشته‌ای که باید به tokenهای متنی تقسیم شود.

مقدار بازگشتی

string[]

آرایه‌ای از tokenهای استخراج‌شده از رشته ورودی.

مثال‌ها

01

استفاده پایه

جداکننده‌هایی مانند فاصله برای جدا کردن tokenها استفاده می‌شوند.

TypeScript
tokenize("hello world");
// ["hello", "world"]
02

علائم نگارشی

کاراکترهای غیرکلمه‌ای، کاراکترهای کلمه‌ای اطراف خود را از هم جدا می‌کنند.

TypeScript
tokenize("hello-world!");
// ["hello", "world"]
03

CamelCase

تغییر از حروف کوچک به حروف بزرگ می‌تواند یک مرز بین tokenها ایجاد کند.

TypeScript
tokenize("helloWorld");
// ["hello", "World"]
04

PascalCase

شناسه‌های PascalCase بر اساس قوانین مرزبندی حروف بزرگ و کوچک تقسیم می‌شوند.

TypeScript
tokenize("HelloWorld");
// ["Hello", "World"]
05

مخفف‌ها

دنباله‌های حروف بزرگ به‌صورت ویژه پردازش می‌شوند تا هر حرف بزرگ به یک token جداگانه تبدیل نشود.

TypeScript
tokenize("parseHTTPResponse");
// ["parse", "HTTP", "Response"]
06

اعداد

کاراکترهای عددی Unicode به‌عنوان کاراکترهای کلمه در نظر گرفته می‌شوند.

TypeScript
tokenize("version2Update");
// ["version2", "Update"]
07

متن Unicode

حروف Unicode به‌عنوان کاراکترهای کلمه حفظ می‌شوند.

TypeScript
tokenize("سلام دنیا");
// ["سلام", "دنیا"]
08

ورودی خالی

یک رشته خالی هیچ tokenای تولید نمی‌کند.

TypeScript
tokenize("");
// []
ساخته شده با@cyref/js·مستندات رسمی