JavaScript

Intl.Segmenter オブジェクト


編集:2023.01.20 by T.A.

[Edge]。→

言語を考慮した文字列の分割を可能にするオブジェクト。

コンストラクター
new Intl.Segmenter()
新しい Intl.Segmenter オブジェクトを生成して返します。
静的メソッド
Intl.Segmenter.supportedLocalesOf(locales[, options])
指定の言語(ロケール)に対応できるロケール タグを表す文字列の配列を返します。
インスタンス メソッド
Intl.Segmenter.resolvedOptions()
Intl.Segmenter による文字列分割で計算されたプロパティの新しいオブジェクトを返します。
Intl.Segmenter.segment(input)
Intl.Segmenter により指定文字列を分割してオブジェクトで返します。
DA=new Intl.Segmenter('ja', {granularity:'word'});  //日本語、粒度:ワード。
D=DA.segment("あい かき、さし。");  //=[object]:[object Object]
A=Array.from(D);  //=[object]:[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
	//0=[object]:[object Object]
	//1=[object]:[object Object]
	//2=[object]:[object Object]
	//3=[object]:[object Object]
	//4=[object]:[object Object]
	//5=[object]:[object Object]
	//6=[object]:[object Object]
	//7=[object]:[object Object]
for(I=0; I<A.length; I++){
  alert(A[I].segment);
}
//表示結果:「あい」「 」「かき」「、」「さ」「し」「。」

segment()

DA=new Intl.Segmenter('ja', {granularity:'word'});  //日本語、粒度:ワード。
SO=DA.segment("あい、かき");  //=[object]:[object Object]
D=SO.containing(0);  //=[object]:[object Object]
	//segment=[string]:あい
	//index=[number]:0
	//input=[string]:あい、かき
	//isWordLike=[boolean]:true

containing()


テスト