我正在使用 EmojiMart作为我的解析器。
我看到了这个相关问题,但它似乎与我的问题不同。
因此,我需要返回表情符号的名称或
例如,我有这段文字:
我会尽力帮助您翻译。以下是需要翻译的内容:
我看到了这个相关问题,但它似乎与我的问题不同。
因此,我需要返回表情符号的名称或
:编码:
以便能够解码它们。例如,我有这段文字:
:+1::skin-tone-6::man-pouting:Hello world:skin-tone-
6:lalalalla:person_with_pouting_face: :poop::skin-tone-11: mamamia
:smile: :skin-tone-6:
我会尽力帮助您翻译。以下是需要翻译的内容:
它应该匹配整个:+1::skin-tone-6:
而不是单独的:+1:
,:skin-tone-6::
——只有它们之间没有空格时才能匹配。(注意:smile:
和:skin-tone-6:
之间的空格)
条件:
只有在skintone为2-6时才应匹配:code::skintone:
如果我执行str.split(regex)
,这是我的预期结果(数组):
- :+1::skin-tone-6:
- :man-pouting:
- Hello world
- :skin-tone-6:
- lalalalla
- :person_with_pouting_face:
- :poop:
- :skin-tone-11:
- mamamia
- :smile:
- :skin-tone-6:
str.replace(regex, callback)
上实现它。目前我正在使用str.split(regex).filter(Boolean).map(emoji => myfunction).join('')
来模拟 replace 的功能。但我认为 replace 更快。 - I am L:+1::skin-tone-6:
的那个。它不会“匹配”其他没有肤色的:code:
。我猜我得使用split? - I am Lsplit()
方法中使用正则表达式时,默认行为是查找所有匹配项进行分割。在.replace
中,应该明确定义。 - Wiktor Stribiżew