इस पोस्ट से उपरोक्त उत्तर के लिए कुछ और जानकारी जोड़ना ।
जावा -12 में परीक्षण, 5 से ऊपर सभी जावा संस्करणों में काम करना चाहिए।
जैसा कि यहाँ उल्लेख किया गया है: https://stackoverflow.com/a/47505451/2987755 ,
जो भी चरित्र (यूनिकोड U + FFFF से ऊपर है) को एक सरोगेट जोड़ी के रूप में दर्शाया गया है, जो जावा को चार मानों की एक जोड़ी के रूप में संग्रहीत करता है, अर्थात एकल यूनिकोड चरित्र को दो आसन्न जावा वर्णों के रूप में दर्शाया गया है।
जैसा कि हम निम्नलिखित उदाहरण में देख सकते हैं।
1. लंबाई:
"🌉".length() //2, Expectations was it should return 1
"🌉".codePointCount(0,"🌉".length()) //1, To get the number of Unicode characters in a Java String
2. समानता: नीचे के रूप में
यूनिकोड का उपयोग करते हुए स्ट्रिंग के लिए "" "का प्रतिनिधित्व \ud83c\udf09
करें और समानता की जांच करें।
"🌉".equals("\ud83c\udf09") // true
जावा UTF-32 का समर्थन नहीं करता है
"🌉".equals("\u1F309") // false
3. आप यूनिकोड चरित्र को जावा स्ट्रिंग में परिवर्तित कर सकते हैं
"🌉".equals(new String(Character.toChars(0x0001F309))) //true
4. String.substring () पूरक वर्णों पर विचार नहीं करता है
"🌉🌐".substring(0,1) //"?"
"🌉🌐".substring(0,2) //"🌉"
"🌉🌐".substring(0,4) //"🌉🌐"
इसे हल करने के लिए हम उपयोग कर सकते हैं String.offsetByCodePoints(int index, int codePointOffset)
"🌉🌐".substring(0,"🌉🌐".offsetByCodePoints(0,1) // "🌉"
"🌉🌐".substring(2,"🌉🌐".offsetByCodePoints(1,2)) // "🌐"
5. ब्रेकइंटरेटर के साथ यूनिकोड स्ट्रिंग को बदलना
6. यूनिकोड java.text.Collator के साथ स्ट्रिंग्स को सॉर्ट करना
। वर्ण। toUpperCase()
( toLowerCase()
, विधियों का उपयोग नहीं किया जाना चाहिए, इसके बजाय, स्ट्रिंग अपरकेस और विशेष रूप से लोअरकेस का उपयोग करें।
8. Character.isLetter(char ch)
समर्थन नहीं करता है, बेहतर उपयोग किया जाता है Character.isLetter(int codePoint)
, methodName(char ch)
चरित्र वर्ग में प्रत्येक विधि के लिए प्रकार होगा methodName(int codePoint)
जो पूरक वर्णों को संभाल सकता है।
9. String.getBytes()
बाइट्स से स्ट्रिंग में परिवर्तित करना InputStreamReader
,OutputStreamWriter
रेफरी:
https://coolsymbol.com/emojis/emoji-for-copy-and-paste.html#objects
https://www.online-toolz.com/tools/text-unicode-entities-convertor.pht
https: //www.ibm.com/developerworks/library/j-unicode/index.html
https://www.oracle.com/technetwork/articles/javaee/supplementary-142654.html
उदाहरण के लिए अधिक जानकारी image1 image2
तलाशने लायक अन्य शब्द: सामान्यीकरण , बीड़ी