Os escapes de propriedade Unicode correspondem a caracteres com base em suas propriedades Unicode: binárias ("semelhantes a booleanos") ou não binárias. Eles podem ser usados para corresponder a emojis, sinais de pontuação, letras (até mesmo letras de idiomas ou sistemas de escrita específicos) etc.
const sentence = "A ticket to 大阪 costs ¥2000 👌."
sentence.match(/\p{Emoji_Presentation}/gu) ➞ ["👌"]Nota: Para que os escapes de propriedade Unicode funcionem, uma expressão regular deve usar a flag u, que indica que uma string deve ser considerada como uma série de pontos de código Unicode. Consulte também RegExp.prototype.unicode.
Nota: Algumas propriedades Unicode abrangem muito mais caracteres do que algumas classes de caracteres (como \w, que corresponde apenas a letras latinas, de a a z), mas estas últimas têm melhor suporte entre os navegadores (em janeiro de 2020).
Corresponda a todas as palavras em nonEnglishText usando um escape de propriedade Unicode.
const nonEnglishText = "Приключения Алисы в Стране чудес"
const regex = /\w+/gu
nonEnglishText.match(regex) ➞ null, \w doesn't work with non english text
const regexpBMPWord = /([\u0000-\u0019\u0021-\uFFFF])+/gu
nonEnglishText.match(regexpBMPWord) ➞ [ 'Приключения', 'Алисы', 'в', 'Стране', 'чудес' ], this works
const regexpUPE = /YOUR SOLUTION HERE/gu
nonEnglishText.match(regexpUPE) ➞ [ 'Приключения', 'Алисы', 'в', 'Стране', 'чудес' ], an easier wayÉ muito provável que você precise consultar as referências na aba Resource para resolver.