Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Bagaimana cara menghapus karakter emoji dari string?

Dengan asumsi Anda hanya ingin menghapus semua karakter non-BMP, yaitu apa pun dengan titik kode Unicode U+10000 dan lebih tinggi, Anda dapat menggunakan regex untuk menghapus pengganti UTF-16 apa pun unit kode dari string. Misalnya:

using System;
using System.Text.RegularExpressions;

class Test
{
    static void Main(string[] args)
    {
        string text = "x\U0001F310y";
        Console.WriteLine(text.Length); // 4
        string result = Regex.Replace(text, @"\p{Cs}", "");
        Console.WriteLine(result); // 2
    }
}

Di sini "Cs" adalah kategori Unicode untuk "pengganti".

Tampaknya Regex bekerja berdasarkan unit kode UTF-16 daripada poin kode Unicode, jika tidak, Anda memerlukan pendekatan yang berbeda.

Perhatikan bahwa ada karakter non-BMP selain emoji, tetapi saya rasa Anda akan menemukan masalah yang sama ketika Anda mencoba menyimpannya.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Adakah cara untuk menghindari pengurutan file ketika pesanan berdasarkan berbeda dengan klausa where?

  2. Cara Memilih Semuanya Sebelum/Setelah Karakter Tertentu di MySQL – SUBSTRING_INDEX()

  3. Tingkatkan bidang basis data sebesar 1

  4. php/mysql dengan banyak kueri

  5. Apakah ada cara untuk melihat database mysql untuk perubahan menggunakan Perl?