sql - 在 SQLite 中处理表情符号

标签 sql encoding sqlite emoji

我希望使用 SQL Lite 确定在文本对话中使用最多的表情符号。我正在使用 DB 浏览器,表情符号的显示就像它们在 iMessage 中一样(见下图),但我对如何计算它们感到困惑。

我在想是否有办法检查一个字符是否不是字母/数字/标点符号,然后我可以计算所有不符合先决条件列表的字符的频率。也就是说,我不熟悉 SQLite 命令以及如何完成它。

有没有更好的方法来解决这个问题?如果您需要更多上下文来回答这个问题,请告诉我。

Emoji Example

最佳答案

我认为直接使用 SQLite 执行此操作的唯一方法是从源代码编译 SQLite,这样您就可以添加对 regex_replace 的支持。

但是,您只打算执行一次,重新编译 SQLite 可能有点矫枉过正。

相反,您可以将 text 列复制到纯文本文件中,然后运行以下命令:

sed 's/\(.\)/\1\n/g' temp.txt | sed 's/[[:alnum:].-]//g' |排序-r | uniq -c

这将变成以下内容:

您好!你卡住了吗? 🤔 我在公园看到了🐻🐻🐻!!!!!! 🎂🎂🎂🎂🎂🎂-全是谎言。 像 123 一样简单! 😎😎😎😎😎😎😎😎😎😎

进入:

  1 🤔
 11 😎
  3 🐻
  6 🎂
  1 ?
  7 !
 17
 50

希望它足够接近以帮助您实现目标。最后两个条目用于制表符和空格。

sed 是一个 linux 命令,所以如果您运行的是 windows,您可能需要在此处获取 windows 版本:https://github.com/mbuilov/sed-windows

关于sql - 在 SQLite 中处理表情符号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49957910/

相关文章:

php - 拆分分隔文本并与另一个字段配对

java - Oracle clob 上的 union\minus 时发生问题

sql - 选择表中除第一个行之外的行

android - 如何像下面的结果一样在 android 中编码 url?

c++ - 编码程序的段错误

php - 如何将数据从sqlite发送到MYSQL

mysql - 无法从 MySQL 导入表

c# - JavaScript 替换汉字

mysql - sqlite 事务未显示在 test.log 中

python - 如何在Django中使用不同的数据库引擎进行测试和生产