Intl.Segmenter.prototype.segment()
segment() 方法是 Intl.Segmenter 实例上的一个方法,它根据该 Intl.Segmenter 对象的区域设置和粒度来分割字符串。
试一试
const string1 = "Que ma joie demeure";
const segmenterFrGrapheme = new Intl.Segmenter("fr", {
granularity: "grapheme",
});
const graphemeSegments = segmenterFrGrapheme.segment(string1);
console.log(Array.from(graphemeSegments)[0]);
// Expected output:
// Object {segment: 'Q', index: 0, input: 'Que ma joie demeure'}
语法
js
segment(input)
参数
input-
要分割的文本,以字符串形式表示。
返回值
一个新的可迭代 Segments 对象,其中包含输入字符串的分割结果,使用分段器的区域设置和粒度。
示例
js
// Create a locale-specific word segmenter
const segmenter = new Intl.Segmenter("fr", { granularity: "word" });
// Use it to get an iterator over the segments of a string
const input = "Moi ? N'est-ce pas ?";
const segments = segmenter.segment(input);
// Use that for segmentation
for (const { segment, index, isWordLike } of segments) {
console.log(
"segment at code units [%d, %d]: «%s»%s",
index,
index + segment.length,
segment,
isWordLike ? " (word-like)" : "",
);
}
// segment at code units [0, 3]: «Moi» (word-like)
// segment at code units [3, 4]: « »
// segment at code units [4, 5]: «?»
// segment at code units [5, 6]: « »
// segment at code units [6, 11]: «N'est» (word-like)
// segment at code units [11, 12]: «-»
// segment at code units [12, 14]: «ce» (word-like)
// segment at code units [14, 15]: « »
// segment at code units [15, 18]: «pas» (word-like)
// segment at code units [18, 19]: « »
// segment at code units [19, 20]: «?»
规范
| 规范 |
|---|
| ECMAScript® 2026 国际化 API 规范 # sec-intl.segmenter.prototype.segment |
浏览器兼容性
加载中…