为了账号安全,请及时绑定邮箱和手机立即绑定

js 如何过滤utf8非3字节编码的字符串

js 如何过滤utf8非3字节编码的字符串

临摹微笑 2019-03-27 15:13:22
js 如何过滤utf8非3字节编码的字符串
查看完整描述

1 回答

?
杨魅力

TA贡献1811条经验 获得超6个赞

Unicode 和 UTF-8 之间的转换关系表 ( x 字符表示码点占据的位 )

码点的位数    码点起值    码点终值    字节序列    Byte 1    Byte 2    Byte 3    Byte 4    Byte 5    Byte 6

  7    U+0000    U+007F    1    0xxxxxxx

11    U+0080    U+07FF    2    110xxxxx    10xxxxxx

16    U+0800    U+FFFF    3    1110xxxx    10xxxxxx    10xxxxxx

21    U+10000    U+1FFFFF    4    11110xxx    10xxxxxx    10xxxxxx    10xxxxxx

26    U+200000    U+3FFFFFF    5    111110xx    10xxxxxx    10xxxxxx    10xxxxxx    10xxxxxx

31    U+4000000    U+7FFFFFFF    6    1111110x    10xxxxxx    10xxxxxx    10xxxxxx    10xxxxxx    10xxxxxx

非3个字节就是0x0800-0xffff之外的


const str = '1。中\文a';

const reg = /[^\u0800-\uffff]/g;

str.replace(reg,'');


查看完整回答
反对 回复 2019-04-04
  • 1 回答
  • 0 关注
  • 483 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信