Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何将所有表情符号的“\u”代码与regexp匹配?_Javascript_Regex_String_Special Characters - Fatal编程技术网

Javascript 如何将所有表情符号的“\u”代码与regexp匹配?

Javascript 如何将所有表情符号的“\u”代码与regexp匹配?,javascript,regex,string,special-characters,Javascript,Regex,String,Special Characters,我想找到匹配的所有字符串,这些字符串将以\u代码的形式包含表情符号。我正在尝试使用下面的regexp,但不起作用 /([\uE000-\uF8FF]|\uD83C[\uDC00-\uDFFF]|\uD83D[\uDC00-\uDFFF]|[\u2694-\u2697]|\uD83E[\uDD10-\uDD5D])/g 但是,它不是检测。我想比赛并获得胜利 \ud83d\ude04\ud83d\ude04\ud83d\ude04\ud83d\ude04\ud83d\ude04\ud83d\ude

我想找到匹配的所有字符串,这些字符串将以\u代码的形式包含表情符号。我正在尝试使用下面的regexp,但不起作用

/([\uE000-\uF8FF]|\uD83C[\uDC00-\uDFFF]|\uD83D[\uDC00-\uDFFF]|[\u2694-\u2697]|\uD83E[\uDD10-\uDD5D])/g
但是,它不是检测。我想比赛并获得胜利

\ud83d\ude04\ud83d\ude04\ud83d\ude04\ud83d\ude04\ud83d\ude04\ud83d\ude04

这些类型的字符。

如果要使用Regex匹配格式为\uxxx的emojis,可以使用:

这是一个简单的演示:

常量regex=/\\u[a-z0-9]{4}/gi; const str=`这是一个pragraph\\ud83d,有一些类似的表情: \\ude04 \\ud83d \\ude04 你见过他们吗? \\ud83d\\ude04 伟大的 `; 让m; 而m=regex.execstr!==空的{ //这是避免具有零宽度匹配的无限循环所必需的 如果m.index==regex.lastIndex{ regex.lastIndex++; } //可以通过'm`-变量访问结果。 m、 forEachmatch,groupIndex=>{ log`find match,group${groupIndex}:${match}`; };
}输入字符串在哪里?您的预期输出应该如何?我不知道unicode代码点,但是您的正则表达式可以在一个包含多个范围和单个代码点的单字符类中编写,例如。[\uE000-\uF8FF\uD83C\uDC00-\uDFFF…]我认为您应该首先使用反斜杠字符保护“\”。不知道什么是输入字符串,什么是预期的输出,但这可能会有所帮助:/\\u[a-zA-Z0-9]{4}/g感谢响应,但我得到了表情之间的空格。我在这里添加了一个示例。但它们不是作为表情符号呈现的。我将使用类似\u格式,但它们是在我的浏览器中呈现的。@user515我不明白吗?你在哪里看到这些空间?
/\\u[a-z0-9]{4}/gi