इसका इस्तेमाल कैसे करें
- टेक्स्ट में टेक्स्ट चिपकाएँ या लिखें। गिनती लिखते ही बदल जाती है।
- अक्षर (ग्राफीम) पढ़ें: पाठक को दिखने वाली लंबाई। कोड पॉइंट यूनिकोड की गिनती है।
- UTF-8 बाइट पढ़ें: वेब पेज या फ़ाइल का आकार, आम एन्कोडिंग में।
- सीमाएँ में SMS और X की पंक्तियाँ देखें: बचा वह जगह है जो आखिरी भाग या पोस्ट में बचती है।
अक्षर, कोड पॉइंट और ग्राफीम
कोड पॉइंट यूनिकोड तालिका की एक संख्या है। पाठक को दिखने वाला अक्षर एक ग्राफीम क्लस्टर है, और एक ग्राफीम में कई कोड पॉइंट हो सकते हैं: स्वर-चिह्न वाला e दो कोड पॉइंट और एक ग्राफीम है, और शून्य चौड़ाई वाले जॉइनर से जुड़ा परिवार वाला इमोजी पाँच कोड पॉइंट और एक ग्राफीम है।
ग्राफीम की गिनती ब्राउज़र के सेगमेंटर से होती है, जो यूनिकोड के ग्राफीम क्लस्टर नियमों (UAX #29) पर चलता है। इसमें दो बातें हैं: स्वर-चिह्न या जॉइनर से पहले टूट नहीं होता, और इमोजी-क्रम या क्षेत्रीय संकेतकों की जोड़ी एक साथ रहती है। संयुक्ताक्षर, जैसे स्ते, भी नए नियम (GB9c, यूनिकोड 15.1) से एक ग्राफीम गिने जाते हैं, इसलिए पुराने ब्राउज़र अलग गिनती दे सकते हैं।
UTF-8, UTF-16 और UTF-32 में बाइट
- UTF-8 में U+007F तक 1 बाइट, U+07FF तक 2, U+FFFF तक 3 और उससे ऊपर 4 बाइट लगते हैं। देवनागरी के अक्षर (U+0900 से U+097F) 3 बाइट लेते हैं।
- UTF-16 में ज्यादातर कोड पॉइंट एक 16-बिट यूनिट लेते हैं। U+FFFF से ऊपर का कोड पॉइंट दो यूनिट लेता है, एक सरोगेट जोड़ी, जो 4 बाइट है।
- UTF-32 में हर कोड पॉइंट के लिए ठीक 4 बाइट लगते हैं।
SMS की सीमाएँ
जिस संदेश में सिर्फ GSM 7-बिट अक्षर हैं, वह एक SMS में 160 अक्षर तक आता है। लंबा हो तो हर भाग में 153 अक्षर, क्योंकि 140 बाइट के पेलोड का कुछ हिस्सा हेडर में जाता है। एक्सटेंशन तालिका के अक्षर (फॉर्म फीड, ^ { } \ [ ~ ] | और यूरो चिह्न) हर एक दो जगह लेते हैं।
जिस संदेश में GSM-7 से बाहर का कोई भी अक्षर हो, वह UCS-2 में जाता है, जो एक SMS में 70 अक्षर और लंबे संदेश के हर भाग में 67 रखता है। देवनागरी का हर अक्षर GSM-7 से बाहर है, इसलिए हिंदी संदेश हमेशा UCS-2 में गिने जाते हैं। यह टूल ş, ğ, ı, İ, ç और Ç को भी GSM-7 से बाहर गिनता है, जो तुर्की टेक्स्ट के लिए सख्त गिनती है।
- GSM-7 तालिका और एक्सटेंशन तालिका विकिपीडिया (अंग्रेजी में) GSM 03.38 लेख से हैं; मानक खुद 3GPP TS 23.038 है, Alphabets and language-specific information।
- 153 और 67 के आँकड़े विकिपीडिया (अंग्रेजी में) SMS लेख में हैं, जो 160 और 70 के आँकड़ों के लिए 3GPP मानक का हवाला देता है।
X पोस्ट की लंबाई
X एक पोस्ट को 280 वजन वाले अक्षरों में गिनता है। ज्यादातर अक्षर 1 वजन के हैं; इमोजी और CJK अक्षर 2। लिंक 23 गिना जाता है, चाहे उसकी लंबाई कुछ भी हो। वजन की सीमाएँ X की twitter-text कॉन्फिग (संस्करण 3) की हैं; X का गिनती वाला पेज वही नियम शब्दों में देता है।
टूल http:// या https:// से शुरू होने वाले लिंक खोजता है। बिना स्कीम के लिखा लिंक सामान्य टेक्स्ट गिना जाता है, इसलिए ऐसी पोस्ट X की गिनती से लंबी गिनी जा सकती है।
हल किया हुआ उदाहरण: नमस्ते दुनिया 👋
इस टेक्स्ट के 15 कोड पॉइंट हैं। इमोजी एक कोड पॉइंट है, पर UTF-16 में दो यूनिट, इसलिए स्ट्रिंग की लंबाई 16 है। पाठक को 9 अक्षर दिखते हैं, क्योंकि संयुक्ताक्षर स्ते एक ग्राफीम है।
UTF-8 आकार 42 बाइट है: देवनागरी के 12 कोड पॉइंट 36 बाइट, दो स्पेस 2 बाइट, और इमोजी 4 बाइट। UTF-16 आकार 16 × 2 = 32 बाइट है, और UTF-32 आकार 15 × 4 = 60 बाइट।
SMS में टेक्स्ट UCS-2 में जाता है, जहाँ एक संदेश 70 अक्षर लेता है: 16 इस्तेमाल, 54 बचे। X पोस्ट में वजन 16 है, जहाँ इमोजी 2 गिना जाता है: 280 में से 264 बचे।
| माप | मान |
|---|---|
| अक्षर (ग्राफीम) | 9 |
| UTF-16 यूनिट | 16 |
| UTF-8 बाइट | 42 |
| UTF-16 बाइट | 32 |
| UTF-32 बाइट | 60 |
| SMS, UCS-2: एक संदेश | 70 में से 16 इस्तेमाल, 54 बचे |
| X पोस्ट | 280 में से 16 इस्तेमाल, 264 बचे |
अक्सर पूछे जाने वाले सवाल
इमोजी एक अक्षर गिना जाता है, पर UTF-16 में दो क्यों?
बेसिक मल्टीलिंगुअल प्लेन के बाहर का इमोजी दो 16-बिट यूनिट लेता है, एक सरोगेट जोड़ी। पाठक को फिर भी एक अक्षर दिखता है, इसलिए ग्राफीम गिनती एक है, जबकि UTF-16 की लंबाई दो।
हिंदी टेक्स्ट SMS में ज्यादा अक्षर क्यों लेता है?
देवनागरी के अक्षर GSM-7 में नहीं हैं, इसलिए एक भी अक्षर पूरे संदेश को UCS-2 बना देता है। UCS-2 SMS में 160 के बजाय 70 अक्षर आते हैं।
X गिनती मुझे दिखने वाले अक्षरों से ज्यादा क्यों लगती है?
X इमोजी और चीनी, जापानी, कोरियाई (CJK) अक्षरों को दो गिनता है, और हर लिंक को 23 अक्षर। यहाँ दिखाई गई गिनती भी वही वजन इस्तेमाल करती है।
क्या SMS और X की सीमाएँ हर कैरियर या प्लेटफॉर्म के लिए सटीक हैं?
ये मानक और X के प्रकाशित वजन पर चलती हैं। कोई कैरियर संदेश को अलग ढंग से बाँट या चार्ज कर सकता है, और यह टूल http या https के बिना लिखे लिंक नहीं जाँचता।
क्या मेरा टेक्स्ट कहीं भेजा जाता है?
नहीं। गिनती आपके ब्राउज़र में होती है। टेक्स्ट न सहेजा जाता है, न साइट को भेजा जाता है।
स्रोत
- विकिपीडिया (अंग्रेजी में): SMS, संदेश की लंबाई और 153 व 67 के आँकड़े
- विकिपीडिया (अंग्रेजी में): GSM 03.38, GSM 7-बिट मूल और एक्सटेंशन तालिकाएँ
- 3GPP TS 23.038 (अंग्रेजी में): Alphabets and language-specific information
- विकिपीडिया (अंग्रेजी में): UTF-8, हर कोड पॉइंट के बाइट
- विकिपीडिया (अंग्रेजी में): UTF-16, कोड यूनिट और सरोगेट जोड़ियाँ
- विकिपीडिया (अंग्रेजी में): UTF-32, स्थिर चौड़ाई
- Unicode UAX #29 (अंग्रेजी में): Unicode text segmentation, grapheme clusters (संशोधन 49)
- X (अंग्रेजी में): Counting characters (पोस्ट की लंबाई और वजन)
- twitter-text, config/v3.json (अंग्रेजी में): वजन की सीमाएँ जो X इस्तेमाल करता है
आँकड़े और टेक्स्ट आखिरी बार मंगलवार, 10 नवंबर 2026 को जाँचे गए।