भ्रामक वर्णों को सुरक्षित टेक्स्ट में सामान्यीकृत करें
भ्रामक वर्णों के सामान्यीकरण का अर्थ है हर हमशक्ल वर्ण को उस सामान्य वर्ण से बदलना जिसकी वह नकल करता है, ताकि एक जैसी दिखने वाली दो स्ट्रिंग तुलना में भी बराबर हों। उपयोगकर्ता नामों की तुलना, ब्लॉकलिस्ट से मिलान या दोहराए गए पहचानकर्ताओं को हटाने से पहले ऐसा करें।
हल किया हुआ उदाहरण
- इनपुट
- Cоnfig file: аdmin2, Noёl, café
- मिली लिपियाँ
- लैटिन (Latn), सिरिलिक (Cyrl)
- चिह्नित वर्ण
- 7
| स्थान | वर्ण | कोड पॉइंट | लिपि | प्रतिस्थापन | नियम |
|---|---|---|---|---|---|
| 0 | C | U+FF23 | लैटिन | C | NFKC सामान्यीकरण |
| 1 | о | U+043E | सिरिलिक | o | भ्रामक वर्ण तालिका |
| 7 | fi | U+FB01 | लैटिन | fi | NFKC सामान्यीकरण |
| 10 | : | U+FF1A | सामान्य | : | भ्रामक वर्ण तालिका |
| 12 | а | U+0430 | सिरिलिक | a | भ्रामक वर्ण तालिका |
| 17 | 2 | U+FF12 | सामान्य | 2 | भ्रामक वर्ण तालिका |
| 22 | ё | U+0451 | सिरिलिक | ë | भ्रामक वर्ण तालिका |
- पठनीय यूनिकोड को सुरक्षित रखें
- Config file: admin2, Noël, café
- सख्त ASCII फ़ॉलबैक
- Config file: admin2, Noel, café
यह कैसे काम करता है
- पहले ज्ञात हमशक्लों को अंतर्निहित तालिका के अनुसार बदला जाता है। तालिका से बाहर के वर्णों को NFKC से सामान्यीकृत किया जाता है, जो फ़ुल-विड्थ रूपों, संयुक्ताक्षरों और अन्य संगतता वर्णों को उनके मानक समकक्षों में बदल देता है।
- “पठनीय यूनिकोड को सुरक्षित रखें” मोड तालिका में परिभाषित होने पर विशेषक चिह्न वाला अक्षर रखता है, जैसे सिरिलिक ё → ë। “सख्त ASCII फ़ॉलबैक” इसके बजाय सादा ASCII अक्षर इस्तेमाल करता है (ё → e)।
- जो अक्षर न तालिका में हैं और न NFKC से बदलते हैं, वे वैसे ही रहते हैं, इसलिए café दोनों मोड में अपना विशेषक चिह्न बनाए रखता है। सामान्यीकृत टेक्स्ट तुलना की कुंजी है, सुरक्षा का फ़ैसला नहीं: मूल टेक्स्ट भी सहेजें और चिह्नित वर्णों की समीक्षा करें।
रूपांतरण सर्वोत्तम प्रयास है: मैप किए गए कन्फ्यूज़ेबल और एनएफकेसी फोल्डिंग नियतात्मक हैं, लेकिन कुछ वैध यूनिकोड को चिह्नित नहीं किया जाएगा।
आपका पाठ
पेस्ट करें या टाइप करें - जैसे ही आप टाइप करते हैं परिणाम अपडेट हो जाते हैं (लंबे इनपुट के लिए हल्के ढंग से डिबाउंस)।
30 वर्ण स्कैन किए गए
7 संदिग्ध
सख्त ASCII फ़ॉलबैक
मूल (संदिग्ध पात्र चिन्हित)
मूल दृश्य में संदिग्ध पात्रों को रेखांकित किया गया है और उन्हें "संदिग्ध" लेबल दिया गया है। रंग को हाइलाइट करने के अलावा.
suspicious character Csuspicious character оnfig suspicious character filesuspicious character : suspicious character аdminsuspicious character 2, Nosuspicious character ёl, café
साफ़ आउटपुट
वर्ण विश्लेषण
| सूचकांक (0-आधारित) | मूल | प्रतिस्थापन | कोड बिंदु | कारण |
|---|---|---|---|---|
| 0 | C | C | U+FF23 | NFKC normalization changed this character (compatibility or width folding). |
| 1 | о | o | U+043E | Non-ASCII confusable mapped to a safer Latin ASCII equivalent. |
| 2 | n | n | U+006E | Not flagged as a confusable or compatibility character. |
| 3 | f | f | U+0066 | Not flagged as a confusable or compatibility character. |
| 4 | i | i | U+0069 | Not flagged as a confusable or compatibility character. |
| 5 | g | g | U+0067 | Not flagged as a confusable or compatibility character. |
| 6 | U+0020 | Not flagged as a confusable or compatibility character. | ||
| 7 | fi | fi | U+FB01 | NFKC normalization changed this character (compatibility or width folding). |
| 8 | l | l | U+006C | Not flagged as a confusable or compatibility character. |
| 9 | e | e | U+0065 | Not flagged as a confusable or compatibility character. |
| 10 | : | : | U+FF1A | Non-ASCII confusable mapped to a safer Latin ASCII equivalent. |
| 11 | U+0020 | Not flagged as a confusable or compatibility character. | ||
| 12 | а | a | U+0430 | Non-ASCII confusable mapped to a safer Latin ASCII equivalent. |
| 13 | d | d | U+0064 | Not flagged as a confusable or compatibility character. |
| 14 | m | m | U+006D | Not flagged as a confusable or compatibility character. |
| 15 | i | i | U+0069 | Not flagged as a confusable or compatibility character. |
| 16 | n | n | U+006E | Not flagged as a confusable or compatibility character. |
| 17 | 2 | 2 | U+FF12 | Non-ASCII confusable mapped to a safer Latin ASCII equivalent. |
| 18 | , | , | U+002C | Not flagged as a confusable or compatibility character. |
| 19 | U+0020 | Not flagged as a confusable or compatibility character. | ||
| 20 | N | N | U+004E | Not flagged as a confusable or compatibility character. |
| 21 | o | o | U+006F | Not flagged as a confusable or compatibility character. |
| 22 | ё | e | U+0451 | Non-ASCII confusable mapped to a safer Latin ASCII equivalent. |
| 23 | l | l | U+006C | Not flagged as a confusable or compatibility character. |
| 24 | , | , | U+002C | Not flagged as a confusable or compatibility character. |
| 25 | U+0020 | Not flagged as a confusable or compatibility character. | ||
| 26 | c | c | U+0063 | Not flagged as a confusable or compatibility character. |
| 27 | a | a | U+0061 | Not flagged as a confusable or compatibility character. |
| 28 | f | f | U+0066 | Not flagged as a confusable or compatibility character. |
| 29 | é | é | U+00E9 | Not flagged as a confusable or compatibility character. |