Intl.Segmenter() Konstruktor
Baseline
2024
Newly available
Since April 2024, this feature works across the latest devices and browser versions. This feature might not work in older devices or browsers.
Der Intl.Segmenter() Konstruktor erstellt Intl.Segmenter Objekte.
Probieren Sie es aus
const segmenterFr = new Intl.Segmenter("fr", { granularity: "word" });
const string = "Que ma joie demeure";
const iterator = segmenterFr.segment(string)[Symbol.iterator]();
console.log(iterator.next().value.segment);
// Expected output: 'Que'
console.log(iterator.next().value.segment);
// Expected output: ' '
Syntax
new Intl.Segmenter()
new Intl.Segmenter(locales)
new Intl.Segmenter(locales, options)
Parameter
localesOptional-
Ein String mit einem BCP 47 Sprach-Tag oder einer
Intl.LocaleInstanz oder ein Array solcher Locale-Identifikatoren. Die Standard-Locale der Laufzeitumgebung wird verwendet, wennundefinedübergeben wird oder wenn keiner der angegebenen Locale-Identifikatoren unterstützt wird. Für die allgemeine Form und Interpretation deslocalesArguments siehe die Parameterbeschreibung auf derIntlHauptseite. optionsOptional-
Ein Objekt, das die folgenden Eigenschaften enthält, in der Reihenfolge, in der sie abgerufen werden (alle sind optional):
localeMatcher-
Der zu verwendende Locale-Abgleichalgorithmus. Mögliche Werte sind
"lookup"und"best fit"; der Standardwert ist"best fit". Informationen zu dieser Option finden Sie unter Locale-Identifikation und -Verhandlung. granularity-
Wie granular die Eingabe aufgeteilt werden soll. Mögliche Werte sind:
"grapheme"(Standard)-
Teilt die Eingabe in Segmente an Graphem-Cluster-Grenzen (benutzerwahrgenommenes Zeichen) auf, wie von der Locale bestimmt.
"word"-
Teilt die Eingabe in Segmente an Wortgrenzen auf, wie von der Locale bestimmt.
"sentence"-
Teilt die Eingabe in Segmente an Satzgrenzen auf, wie von der Locale bestimmt.
Rückgabewert
Eine neue Instanz von Intl.Segmenter.
Ausnahmen
RangeError-
Wird ausgelöst, wenn
localesoderoptionsungültige Werte enthalten.
Beispiele
>Grundlegende Verwendung
Das folgende Beispiel zeigt, wie man Wörter in einem String in der japanischen Sprache zählt (wo das Aufteilen des Strings mit String Methoden ein falsches Ergebnis geliefert hätte).
const text = "吾輩は猫である。名前はたぬき。";
const japaneseSegmenter = new Intl.Segmenter("ja-JP", { granularity: "word" });
console.log(
[...japaneseSegmenter.segment(text)].filter((segment) => segment.isWordLike)
.length,
);
// 8, as the text is segmented as '吾輩'|'は'|'猫'|'で'|'ある'|'。'|'名前'|'は'|'たぬき'|'。'
Spezifikationen
| Specification |
|---|
| ECMAScript® 2026 Internationalization API Specification> # sec-intl-segmenter-constructor> |
Browser-Kompatibilität
Loading…