ठीक है, आइए एक तालिका से शुरू करते हैं जिसे मैंने यहां में रखा है। . यह कहता है, उदाहरण के लिए, कि E381yy हीरागाना के लिए utf8 एन्कोडिंग है और E383yy कटकाना (जापानी) है। (कांजी एक और मामला है।)
यह देखने के लिए कि क्या किसी utf8 कॉलम में कटकाना है, ऐसा कुछ करें
WHERE HEX(col) REGEXP '^(..)*E383'
सिरिलिक हो सकता है
WHERE HEX(col) REGEXP '^(..)*D[0-4]'
चीनी थोड़ा मुश्किल है, लेकिन यह आमतौर पर . हो सकता है चीनी के लिए काम (और कांजी?):
WHERE HEX(col) REGEXP '^(..)*E[4-9A]'
('कैरेक्टर सेट' कीवर्ड से बचने के लिए मैं आपका शीर्षक बदलने जा रहा हूं।)
पश्चिमी यूरोप (फ्रेंच सहित, लेकिन इन्हीं तक सीमित नहीं) C[23]
, तुर्की (लगभग, और कुछ अन्य) (C4|C59)
, ग्रीक:C[EF]
, हिब्रू:D[67]
, भारतीय, आदि:E0
, अरबी/फ़ारसी/फ़ारसी/उर्दू:D[89AB]
. (हमेशा ^(..)*
. के साथ उपसर्ग करें ।
आप देख सकते हैं कि ये जरूरी नहीं कि बहुत विशिष्ट हों। यह ओवरलैप के कारण है। कुछ शब्दों की वर्तनी के अलावा ब्रिटिश अंग्रेजी और अमेरिकी अंग्रेजी को अलग नहीं किया जा सकता है। यूरोप में कई उच्चारण अक्षरों को विभिन्न तरीकों से साझा किया जाता है। भारत में कई अलग-अलग चरित्र सेट हैं:देवनागरी, बंगाली, गुरुमुखी, गुजराती, आदि; ये शायद अलग-अलग हैं, लेकिन इसके लिए और अधिक शोध करना होगा। मुझे लगता है कि अरबी/फ़ारसी/फ़ारसी/उर्दू एक वर्ण सेट साझा करते हैं।
कुछ और:
| SAMARITAN | E0A080 | E0A0BE |
| DEVANAGARI | E0A480 | E0A5BF |
| BENGALI | E0A681 | E0A7BB |
| GURMUKHI | E0A881 | E0A9B5 |
| GUJARATI | E0AA81 | E0ABB1 |
| ORIYA | E0AC81 | E0ADB1 |
| TAMIL | E0AE82 | E0AFBA |
| TELUGU | E0B081 | E0B1BF |
| KANNADA | E0B282 | E0B3B2 |
| MALAYALAM | E0B482 | E0B5BF |
| SINHALA | E0B682 | E0B7B4 |
| THAI | E0B881 | E0B99B |
| LAO | E0BA81 | E0BB9D |
| TIBETAN | E0BC80 | E0BF94 |
तो, देवनागरी के लिए, '^(..)*E0A[45]'