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 đồ.
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.