Teraz możesz używać Intl.Segmenter
segmentacji tekstu z uwzględnieniem języka, aby podzielić ciąg znaków na słowa, zdania lub grafemy.
Wiele języków innych niż łaciński, takich jak chiński i japoński, Nie używaj spacji do oddzielania słów. Dlatego za pomocą funkcji split()
JavaScript na odstępach od spacji, aby podzielić tekst na słowa, zwróci nieprawidłowe wyniki.
Podczas tworzenia nowego obiektu Intl.Segmenter
z parametrem konstruktora Intl.segmenter()
, w locale
i opcjach, w tym granularity
, które mogą mają wartości "grapheme"
, "word"
lub "sentence"
. Poniżej tworzy nowy obiekt Intl.Segmenter
dla języka japońskiego z podziałem na słowa.
const segmenter = new Intl.Segmenter('ja-JP', { granularity: 'word' });
Wywołuję metodę segment()
na obiekcie Intl.Segmenter
z ciągiem tekstowym zwraca iteracja:
const segments = segmenter.segment(str); console.table(Array.from(segments));
Przeczytaj artykuł Korzystanie z interfejsu Intl.Segmenter API. na blogu Polypane.
Międzynarodowa segmentacja tekstu za pomocą narzędzia Intl.Segmenter w języku JavaScript zawiera więcej przykładów, w tym instrukcje używania Intl.Segmenter
z emotikonami.