正文
ECMAScript6面对大于0xFFFF的Unicode字符如何正确返回长度
小程序:扫一扫查出行
【扫一扫了解最新限行尾号】
复制小程序
【扫一扫了解最新限行尾号】
复制小程序
一、match()
1.定义
match()方法用于检索字符串内指定(字符串或正则)的值,返回指定值的数组,若找不到,返回null。
2.语法
str.match(searchvalue)
str.match(regexp)
3.示例
let str = 'abc-def-zxc';
console.log(str.match('-')); // ["-", index: 3, input: "abc-def-zxc"]
console.log(str.match(/[a-z]{3}/g)); // ["abc", "def", "zxc"]
4.注意
match()常常与正则标识g配合使用,若没有g则只匹配一次。
let str = 'abc-def-zxc';
console.log(str.match(/[a-z]{3}/)); // ["abc", index: 0, input: "abc-def-zxc"]
console.log(str.match(/[a-z]{3}/g)); // ["abc", "def", "zxc"]
二、使用match()方法判断大于0xFFFF的Unicode字符长度
正则标识u能识别码点大于0xFFFF的Unicode字符。
console.log(/^.$/.test('