Đối tượng Phân đoạn quốc tế hiện đã có trong Baseline

Bạn hiện có thể dùng Intl.Segmenter để phân đoạn văn bản theo ngôn ngữ để tách một chuỗi thành các từ, câu hoặc biểu đồ.

Hỗ trợ trình duyệt

  • Chrome: 87.
  • Cạnh: 87.
  • Firefox: 125.
  • Safari: 14.1.

Nguồn

Nhiều ngôn ngữ không phải tiếng Latinh, chẳng hạn như tiếng Trung và tiếng Nhật, không sử dụng dấu cách để phân tách từ. Do đó, việc sử dụng JavaScript split() trên khoảng trắng để tách văn bản thành các từ, sẽ trả về kết quả không chính xác.

Khi tạo một đối tượng Intl.Segmenter mới bằng thuộc tính Hàm khởi tạo Intl.segmenter(), truyền vào locale và các tuỳ chọn bao gồm granularity. có giá trị "grapheme", "word" hoặc "sentence". Nội dung sau đây Ví dụ: sẽ tạo một đối tượng Intl.Segmenter mới cho tiếng Nhật, phân tách theo các từ.

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

Gọi segment() phương thức trên đối tượng Intl.Segmenter có một chuỗi văn bản trả về một đối tượng có thể lặp lại:

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

Đọc bài viết Sử dụng Intl.Segmenter API trên blog của Polypan để xem một hướng dẫn tuyệt vời về cách sử dụng tính năng này.

Phân đoạn văn bản quốc tế bằng Trình phân đoạn quốc tế trong JavaScript có nhiều ví dụ hơn, bao gồm cách sử dụng Intl.Segmenter với biểu tượng cảm xúc.