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.