- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我正在创建一个类来检测表情符号,并具有以下检测 :)
表情符号,包括它们的各种变体(=]、=)、[=、[:、
等),但它不起作用,我无法终生找出问题所在。我正在 JSFiddle 中对其进行测试。
var DetectEmoticons = {
countHappy: function(data) {
var pattern = new RegExp("[:/=]-?[]/)] | [[/(]-?[:/=]", "g");
var count = (data.match(pattern) || []).length;
return count;
}
}
alert(DetectEmoticons.countHappy("=)"));
最佳答案
[:=;]-?[)(|\\/\]\[]|[)(|\\/\]\[]-?[:=;]
在您将其分解之前,这看起来像是来自 hell 的邪恶困惑:
[:=;]
匹配一个 : 或一个 = 或一个 ;
[)(|\\/\]\[]
匹配一个 ), (, |,\(反斜杠,因为它是元字符),/, ](反斜杠,因为它是元字符) 或 [(反斜杠,因为它是元字符)。(我们不需要反斜杠 ) 或 (,因为它们不是字符类中的元字符)。
中间的 |
表示“匹配我的左边或匹配我的右边”,然后我写相同的两个字符类,但相反以匹配方向相反的笑脸。
我认为您的正则表达式存在问题:
[]/)]
您忘记使用 \
对第一个 ]
进行转义,因此它被视为过早结束字符类。
另一个问题是您认为正斜杠 /
是用来转义的。不是的,\
是用来转义的,/
在regex中没有特殊意义。
关于javascript - 在javascript中使用正则表达式检测表情符号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16954047/
我遇到了 Handlebars 表达式 {{!< default}}我不明白。在问这个问题之前,我曾尝试在谷歌上搜索答案。但是,我找不到任何答案。谁能解释一下这个表达式是什么意思? 最佳答案 在 Ha
经常有朋友问起,如何在im即时通讯中实现发送图片、视频、语音和表情? 为此,小编特意写了一个vue版本的demo,实现了图片视频文件和表情的的发送,参考这个demo源代码,相信你就可以轻松的用un
这里是一个网站 ( https://twitchemotes.com/apidocs ),它展示了一个用于获取 twitch 表情的 API(基本上是描述属于不同用户的一组图像的 json)。 API
使用 Python 3,像下面这样的简单脚本应该按预期运行,但似乎会因 unicode 表情字符串而窒息: import re phrase = "(╯°□°)╯ ︵ ┻━┻" pattern = r
我试图弄清楚表情符号(表情)选择是如何在 Facebook 应用和 Google Hangouts 应用上实现的。我查看了 Android API 示例中的 SoftKeyboard 演示应用程序,但
我正在尝试在 android 通知文本中显示笑脸(或图像范围)。它不起作用。有人知道怎么做吗?谢谢。 代码如下: SpannableStringBuilder builder = new Spanna
我是一名优秀的程序员,十分优秀!