Intl.Segmenter【国際化:テキスト区切り】オブジェクト
メモ
概要
- テキストを区切り単位 (書記素・単語・文) で分割
- 書記素:文字・数字・記号 等の最小単位
- サロゲートペア ・emoji (絵文字) 対応〔 例 〕
- 文字数の取得可
- String【文字列】 のサロゲートペア・emoji (絵文字) も参照
- Firefox 114.0.2 (2023-6-20) は未対応
基本操作
〔 例 〕- Intl.Segmenter【国際化:テキスト区切り】を new で生成
- segment【セグメント化】メソッドで Segments【セグメント コレクション】取得
- Segments【セグメント コレクション】から個々のセグメント要素 取得 (下記で繰り返し)
- [ @@iterator ]【イテレータ作成】でイテレータ処理
- for-of【プロパティ値反復処理】で処理 (処理は上記参照)
関連
外部リンク
- ECMA-402 (英語)
Segmenter Objects ES2024 Intl (11) ES2023 Intl (10) ES2022 Intl (9) - Unicode® Emoji (英語)
コンストラクタ・メソッド
構文 | 備考 |
---|---|
new Intl.Segmenter( [ locales [ , options ] ] ) | コンストラクタ |
Segmenter【国際化:テキスト区切り】 メソッド | 備考 | |
---|---|---|
Intl.Segmenter.prototype. | resolvedOptions ( ) | ロケール・オプション取得 |
Intl.Segmenter.prototype. | segment ( string ) | セグメント化 |
Intl.Segmenter. | supportedLocalesOf ( locales [ , options ] ) | サポート ロケール取得 |
Segments【セグメント コレクション】 メソッド | 備考 | |
---|---|---|
Intl.Segments.prototype | [ @@iterator ] ( ) | イテレータ作成 実装:segments [ Symbol.iterator ]( ) |
Intl.Segments.prototype. | containing ( index ) | インデックス位置セグメント取得 |
プロパティ
プロパティ | 備考 | |
---|---|---|
Intl.Segmenter.prototype | [ @@toStringTag ] | タグ (デフォルト:'Intl.Segmenter') 実装:segmenter [ Symbol.toStringTag ] |
Intl.Segmenter.prototype. | constructor | コンストラクタ定義 |
Intl.Segmenter. | prototype | プロトタイプ |
new Intl.Segmenter【コンストラクタ】
メモ
概要
- Intl.Segmenter【国際化:テキスト区切り】オブジェクトを生成
- segment【セグメント化】でテキスト区切り
外部リンク
- ECMA-402 (英語)
Intl.Segmenter ( [ locales [ , options ] ] ) ES2024 Intl (11) ES2023 Intl (10) ES2022 Intl (9) - BCP 47 (Best Current Practice) [英語]
- ISO 639-1コード一覧
構文
new Intl.Segmenter( [locales[, options]] )
locales ロケール (BCP 47 の言語タグ等)〔実装依存〕
省略:デフォルトのロケール〔実装依存〕
文字列:1ロケール指定
文字列の配列:複数指定可 (適切な1ロケールを自動選択)
options オプション の組合せ
locales (ロケール) 実装依存
BCP 47 の言語タグ (一例)
値 | 備考 |
---|---|
ja | 日本語 |
ja-JP | 日本語 (日本) |
en-US | 英語 (アメリカ) |
en-GB | 英語 (イギリス) |
de-DE | ドイツ語 (ドイツ) |
fr-FR | フランス語 (フランス) |
ISO 639-1・639-2 (言語コード) 一例
ISO 639-1 | ISO 639-2 | ISO 639-3 | 備考 |
---|---|---|---|
ja | jpn | jpn | 日本語 |
en | eng | eng | 英語 |
de | deu ger | deu | ドイツ語 |
fr | fra fre | fra | フランス語 |
options (オプション)
オプション | 値 (太字:デフォルト値) | 説明 |
---|---|---|
granularity | 'grapheme':書記素 (最小単位) 'word':単語 'sentence':文 | 区切り単位 |
localeMatcher | 'lookup':Lookupアルゴリズム 'best fit':最適アルゴリズム (実装依存) | ロケールマッチングアルゴリズム (実装依存) |
例
Intl.Segmenter.prototype.resolvedOptions【ロケール・オプション取得】
メモ
概要
- ロケール・オプションを取得
外部リンク
- ECMA-402 (英語)
Intl.Segmenter.prototype.resolvedOptions ( ) ES2024 Intl (11) ES2023 Intl (10) ES2022 Intl (9)
構文
segmenter.resolvedOptions( )
オブジェクト (下記プロパティ有効)
プロパティ | 備考 |
---|---|
locale | ロケール |
granularity | 区切り単位 |
例
Intl.Segmenter.prototype.segment【セグメント化】
メモ
概要
- テキストを区切って Segments【セグメント コレクション】取得
- 個々のセグメント要素は、下記で繰り返し処理
- [ @@iterator ]【イテレータ作成】でイテレータ処理
- for-of【プロパティ値反復処理】で処理 (処理は上記参照)
外部リンク
- ECMA-402 (英語)
Intl.Segmenter.prototype.segment ( string ) ES2024 Intl (11) ES2023 Intl (10) ES2022 Intl (9)
構文
segmenter.segment( string )
Segments【セグメント コレクション】
string テキスト
例
Intl.Segmenter.supportedLocalesOf【サポート ロケール取得】
メモ
概要
- 指定ロケールから、サポート対象のロケールを取得
外部リンク
- ECMA-402 (英語)
Intl.Segmenter.supportedLocalesOf ( locales [ , options ] ) ES2024 Intl (11) ES2023 Intl (10) ES2022 Intl (9)
構文
Intl.Segmenter.supportedLocalesOf( locales[, options] )
サポートされるロケールの配列
locales BCP 47 言語タグの文字列 または その配列
(new Intl.Segmenter【コンストラクタ】の ロケール詳細 を参照)
options マッチングオプション (localeMatcher【ロケールマッチングアルゴリズム】)
(new Intl.Segmenter【コンストラクタ】の オプション詳細 を参照)
例
Intl.Segmenter.prototype [ @@iterator ]【イテレータ作成】
メモ
概要
- イテレータオブジェクト作成
- Segments【セグメント コレクション】の要素アクセス
外部リンク
- ECMA-402 (英語)
%SegmentsPrototype% [ @@iterator ] ( ) ES2024 Intl (11) ES2023 Intl (10) ES2022 Intl (9)
構文
例
Intl.Segments.prototype.containing【インデックス位置セグメント取得】
メモ
概要
- 指定インデックス位置の文字を含むセグメントを取得
外部リンク
- ECMA-402 (英語)
%SegmentsPrototype%.containing ( index ) ES2024 Intl (11) ES2023 Intl (10) ES2022 Intl (9)