我一直在使用 JavaScript 代理对在 0x0FFFF 范围之外寻找匹配的 unicode 字符。
本文展示了如何匹配它们,因此要匹配 ascii 小写字母或麻将牌红龙(U+1F004),我可以使用:
/[a-z]|\ud83c\udc04/g
代理序列意味着集合不能全部存在于一个字符类中,那么我该如何否定它呢?即,我如何匹配不在[a-z]
范围内且不是代理对的任何字符\ud83c\udc04
?
我想在替换操作中使用它,就像 -
'123'.replace(/[^a-z]/g, '' )
- 将导致一个空字符串。