کلمات چگونه شمارش میشوند؟
این ابزار کلمات را با استفاده از API داخلی Intl.Segmenter مرورگر (Chrome 87+، Firefox 125+، Safari 14.1+) در صورت پشتیبانی میشمارد که هر خط نوشتاری — لاتین، چینی، عربی، Devanagari، ژاپنی، کرهای، سیریلیک — را با مرزهای کلمه دقیق از نظر زبانی برگرفته از CLDR یونیکد مدیریت میکند. وقتی Intl.Segmenter در دسترس نیست، به یک عبارت منظم آگاه از یونیکد (/\p{L}+/gu) که هر توالی از حروف یونیکد را مطابقت میدهد بازمیگردد. اکثر ابزارهای رقیب متن را روی فاصله ASCII تقسیم میکنند و هر چیزی خارج از الفبای لاتین را به خاموشی اشتباه میشمارند؛ این ابزار چنین نمیکند.
شمارش چگونه کار میکند
شش مرحله در مرورگر شما در هر ضربه کلید اتفاق میافتد. هیچکدام از آنها شبکه را لمس نمیکنند. کل خط لوله برای ورودی به طول پاراگرافهای معمول در کمتر از یک میلیثانیه اجرا میشود.
- متن شما از textarea خوانده شده و در حافظه مرورگر نگهداشته میشود — هیچچیز دستگاه شما را ترک نمیکند.
- تعداد کاراکتر از عملگر spread جاوااسکریپت (
[...text].length) برای شمارش نقطههای کد یونیکد استفاده میکند، بنابراین ایموجیهایی مثل 🙂 صرف نظر از رمزگذاری داخلی UTF-16 آنها به عنوان ۱ کاراکتر شمرده میشوند. - تعداد کلمات به
Intl.Segmenterباgranularity: 'word'متکی است و بخشهایی را کهisWordLikeدر آنها true است فیلتر میکند. متن چینی و ژاپنی که کلمات در آنها با فاصله جدا نشدهاند یک بخش به ازای هر کاراکتر میشمارند. - تعداد جملات از
Intl.Segmenterباgranularity: 'sentence'استفاده میکند که با مخففسازیها، نقطههای سهگانه و موارد لبهای علائم نگارشی بهتر از یک تقسیم ساده روی نقطه کنار میآید. - تعداد پاراگرافها روی یک یا چند خط خالی (
\n\s*\n) تقسیم میکند و بخشهای خالی را فیلتر میکند. - زمانهای مطالعه و سخنرانی تعداد کلمات را بر نرخ WPM پیکربندیشده تقسیم میکنند (پیشفرض: ۲۰۰ مطالعه، ۱۳۰ سخنرانی) و نتیجه را به صورت دقیقه و ثانیه فرمت میکنند.
چرا کلمات را بشماریم؟
- محدودیتهای مقاله و ارسال. دانشگاهها مقالات شخصی را به ۶۵۰ کلمه (Common App) یا ۵۰۰ کلمه محدود میکنند. دانستن تعداد قبل از ارسال به معنای عدم نیاز به کوتاه کردن در آخرین لحظه تحت فشار است.
- SEO و برنامهریزی محتوا. تیمهای کیفیت جستجو از تعداد کلمات به عنوان یک معیار تقریبی برای عمق موضوعی استفاده میکنند، و صفحات طولانی بین ۱,۵۰۰ تا ۲,۵۰۰ کلمه به طور مداوم برای کوئریهای رقابتی بالاتر رتبهبندی میشوند.
- اندازهگیری برای شبکههای اجتماعی. X پستها را به ۲۸۰ کاراکتر، توضیحات meta را به حدود ۱۶۰ کاراکتر محدود میکند. کاشی کاراکتر عدد دقیق را قبل از پیست در ویرایشگر پلتفرم نشان میدهد.
- برآورد رونویسی و ارائه. زمان مطالعه با ۲۰۰ WPM با متوسط مطالعه بیصدا مطابقت دارد؛ زمان سخنرانی با ۱۳۰ WPM با ارائه محاورهای مطابقت دارد. هر دو را برای اندازهگیری یک بخش پادکست، برنامهریزی یک سخنرانی ۵ دقیقهای یا برآورد زمان روایت قبل از جلسه ضبط استفاده کنید.
کاربردهای رایج
شمارش کلمات و کاراکترها در نوشتار، محتوا و کارهای توسعه نمود پیدا میکند، و موتور آگاه از یونیکد برای تیمهایی که محتوا را به بیش از یک زبان ارائه میکنند بیشترین اهمیت را دارد:
- نوشتار آکادمیک: پیشرفت به سوی هدف فصل پایاننامه را دنبال کنید یا تأیید کنید که یک چکیده قبل از ارسال در محدودیت کاراکتری مجله باقی میماند.
- متن بازاریابی و UX: یک موضوع ایمیل، یک تیتر hero یا یک برچسب دکمه CTA را در برابر بودجه کاراکتری که طراح در Figma تعیین کرده اندازه بگیرید.
- نوشتن سخنرانی و پادکست: یک اسکریپت را به مدت زمان مورد انتظار تبدیل کنید تا قبل از روز تمرین بدانید که یک سخنرانی اصلی بیش از حد طولانی است.
یک مثال از شمارش کلمات چگونه است؟
این نمونه سه پاراگرافی را در نظر بگیرید. The quick brown fox jumps over the lazy dog. The sentence above is a pangram — it contains every letter of the English alphabet, which is why typographers and font designers use it to preview a typeface. Pangrams date back at least to the 19th century, when telegraph operators used short letter-complete sentences to test transmission accuracy. Today they show up in font specimens, keyboard tests, and the default placeholder text of every design app from Figma to InDesign. آن را در ورودی پیست کنید و کاشیهای معیار گزارش میدهند: ۷۱ کلمه، ۴۱۰ کاراکتر با فاصله، ۳۴۰ کاراکتر بدون فاصله، ۴ جمله، ۳ پاراگراف، زمان مطالعه حدود ۲۱ ثانیه با ۲۰۰ WPM. پانل پرتکرارترین کلمات کلمات پرمحتوا را نشان میدهد. به متن چینی، عربی یا هندی تغییر دهید و هر کاشی طبق قوانین تقسیم خط نوشتاری مجدداً محاسبه میشود.
کلمات چگونه شمارش میشوند؟
در مرورگرهایی که از Intl.Segmenter پشتیبانی میکنند (Chrome 87+، Firefox 125+، Safari 14.1+) ابزار از new Intl.Segmenter(locale, { granularity: 'word' }) استفاده کرده و بخشهایی که isWordLike در آنها true است میشمارد. این چینی، ژاپنی، عربی، Devanagari و هر خط نوشتاری یونیکد دیگری را به درستی مدیریت میکند. در مرورگرهای قدیمیتر، regex fallback /\p{L}+/gu هر توالی از حروف یونیکد را مطابقت میدهد.
چرا تعداد با MS Word متفاوت است؟
الگوریتم شمارش کلمات Microsoft Word اختصاصی است و ترکیبات خطفاصلهدار، انقباضات و کاراکترهای خاص را در نسخههای مختلف به صورت متفاوت مدیریت میکند. این ابزار «won't» را به عنوان یک کلمه میشمارد، در حالی که Word ممکن است آن را دو کلمه بشمارد. برای اکثر نثر، تعدادها با ۱-۲٪ تفاوت مطابقت دارند. تعداد کاراکترها همیشه وقتی متن منبع همان رشته UTF-8 است با هم توافق دارند.
آیا از خطوط نوشتاری غیرلاتین (چینی، عربی، سیریلیک) پشتیبانی میشود؟
بله. API Intl.Segmenter از طراحی آگاه از یونیکد است. عربی و عبری (خطوط راست به چپ) به درستی شمارش میشوند؛ سیریلیک و یونانی مانند تقسیمبندی مرز کلمه لاتین معمولی شمارش میشوند؛ چینی و ژاپنی یک بخش کلمهمانند به ازای هر کاراکتر گزارش میدهند زیرا این سیستمهای نوشتاری از فاصله بین کلمات استفاده نمیکنند. تعداد کاراکتر (با استفاده از [...text].length) همیشه نقطههای کد یونیکد را صرف نظر از خط نوشتاری میشمارد.
آیا متن من آپلود میشود؟
خیر. هر محاسبهای درون تب مرورگر شما با استفاده از API های جاوااسکریپت بومی اجرا میشود. هیچچیز به سرورهای Ultim8Soft یا هیچ سرویس شخص ثالثی ارسال نمیشود. میتوانید با باز کردن DevTools مرورگر، رفتن به تب Network، پاک کردن لاگ، تایپ در ورودی، و تأیید اینکه برای مرحله شمارش هیچ درخواست شبکهای ظاهر نمیشود این را تأیید کنید.
این شمارشگر کلمات کاملاً در مرورگر شما اجرا میشود. بدون آپلود، بدون حساب کاربری، بدون کتابخانه خارجی، بدون analytics بر روی متن شمارششده. هر متنی را در هر خط نوشتاری پیست کنید، هفت کاشی معیار را در حین تایپ مشاهده کنید، و آنچه نیاز دارید را کپی کنید.