从javascript字符串中删除U + 10000-U + 10FFFF

Bri*_*ray 4 javascript unicode

尝试过string.replace(/\u10000-\u10FFFF/g, ''),但遗憾的\u是不支持10000+

Jon*_*ski 8

要指定超出U + FFFF的代码点,您需要查找UTF-16代理项对:

string.replace(/[\uD800-\uDBFF][\uDC00-\uDFFF]/g, '')
Run Code Online (Sandbox Code Playgroud)

供将来参考:当前ECMAScript 提议之一是添加一个/u标志以支持Unicode增补字符,这将允许:

string.replace(/[\u{10000}-\u{10ffff}]/gu, '')
Run Code Online (Sandbox Code Playgroud)