このたび、 Intl.Segmenter
: 言語 / 地域に応じたテキスト セグメンテーションでは、文字列を単語、文、 書記体です
対応ブラウザ
-
<ph type="x-smartling-placeholder">
-
<ph type="x-smartling-placeholder">
-
<ph type="x-smartling-placeholder">
-
<ph type="x-smartling-placeholder">
中国語や日本語など、ラテン系以外の言語の多くは 単語を区切るためにスペースを使用しないでください。そのため、JavaScript 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));
Intl.Segmenter API の使用を読む。 をご覧ください。
JavaScript での Intl.Segmenter を使用したインターナショナル テキスト セグメンテーション には、Intl.Segmenter
を絵文字で使用する方法など、他にも例があります。