Mysql
 sql >> डेटाबेस >  >> RDS >> Mysql

मैं अपने इनपुट से इमोजी वर्णों को कैसे फ़िल्टर कर सकता हूं ताकि मैं MySQL <5.5 में सहेज सकूं?

तो यह पता चला है कि इसका उत्तर कई बार दिया गया है, मुझे मौजूदा प्रश्नों को खोजने के लिए बिल्कुल सही Google-fu नहीं मिला है।

Martijn Pieters को धन्यवाद , समाधान नियमित अभिव्यक्तियों की दुनिया से आया है, विशेष रूप से यह कोड (उपरोक्त पहले लिंक पर उनके उत्तर के आधार पर):

import re
try:
    # UCS-4
    highpoints = re.compile(u'[\U00010000-\U0010ffff]')
except re.error:
    # UCS-2
    highpoints = re.compile(u'[\uD800-\uDBFF][\uDC00-\uDFFF]')
# mytext = u'<some string containing 4-byte chars>'
mytext = highpoints.sub(u'\u25FD', mytext)

मैं जिस वर्ण को बदल रहा हूं वह है WHITE MEDIUM SMALL SQUARE (U+25FD) , FYI करें, लेकिन कुछ भी हो सकता है।

यूसीएस से अपरिचित लोगों के लिए, मेरे जैसे, यह यूनिकोड रूपांतरण के लिए एक प्रणाली है और पायथन के दिए गए निर्माण में यूसीएस -2 या यूसीएस -4 संस्करण के लिए समर्थन शामिल होगा, जिनमें से प्रत्येक में चरित्र समर्थन पर एक अलग ऊपरी सीमा है।

इस कोड को जोड़ने के साथ, स्ट्रिंग्स MySQL 5.1 में ठीक-ठाक बनी रहती हैं।

आशा है कि यह उसी स्थिति में किसी और की मदद करेगा!



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. क्या मुझे वास्तव में mysql_close () करने की ज़रूरत है

  2. Ubuntu 20.04 पर MySQL 5.6 स्थापित करें

  3. महीना और दिन घटाएं mysql

  4. MySQL डेटाबेस के साथ सामान्य समस्याओं को कैसे ठीक करें?

  5. पंक्तियों को अलग करने के लिए अद्यतन के लिए चयन... का उपयोग करने का न्यूनतम उदाहरण