شی Intl.Segmenter اکنون بخشی از Baseline است

اکنون می توانید از Intl.Segmenter برای تقسیم بندی متن حساس به محلی استفاده کنید تا یک رشته را به کلمات، جملات یا نمودارها تقسیم کنید.

پشتیبانی مرورگر

  • 87
  • 87
  • 125
  • 14.1

منبع

بسیاری از زبان های غیر لاتین، مانند چینی و ژاپنی، از فاصله برای جداسازی کلمات استفاده نمی کنند. بنابراین، استفاده از متد split() جاوا اسکریپت در فضای سفید برای تقسیم متن به کلمات، نتایج نادرستی را نشان می دهد.

هنگام ایجاد یک شیء Intl.Segmenter جدید با سازنده Intl.segmenter() ، یک locale و گزینه هایی از جمله granularity را ارسال کنید، که می تواند مقادیر "grapheme" ، "word" یا "sentence" داشته باشد. مثال زیر یک شی جدید Intl.Segmenter برای ژاپنی ایجاد می کند که بر روی کلمات تقسیم می شود.

const segmenter = new Intl.Segmenter('ja-JP', { granularity: 'word' });

فراخوانی متد segment() روی یک شی Intl.Segmenter با رشته ای از متن، یک تکرار برمی گرداند:

const segments = segmenter.segment(str);
console.table(Array.from(segments));

برای آموزش عالی در مورد نحوه استفاده از این ویژگی ، Using the Intl.Segmenter API را در وبلاگ Polypane بخوانید.

تقسیم بندی متن بین المللی با Intl.Segmenter در جاوا اسکریپت مثال های بیشتری دارد، از جمله نحوه استفاده از Intl.Segmenter با شکلک.