onlinetools.dev

स्ट्रिंग एस्केप / अनएस्केप

JSON, JavaScript, Java, XML, SQL और CSV के लिए स्ट्रिंग एस्केप या अनएस्केप कीजिए

स्थानीय रूप से चलता है
loading…
इस टूल के बारे में

उद्धरण चिह्नों वाली बहु-पंक्ति स्ट्रिंग को ऐसी चीज़ में बदलिए जिसे आप किसी JSON मान, JavaScript लिटरल, Java स्ट्रिंग, XML पाठ-नोड, SQL लिटरल या CSV कोष्ठ के भीतर चिपका सकें — और जब किसी लॉग फ़ाइल में एस्केप किया पाठ मिले और उसे पढ़ना हो, तो प्रक्रिया उलट दीजिए। छह बोलियाँ, दोनों दिशाएँ।

हर बोली किसी न्यूनतम साझा मानक के बजाय अपनी असली विशिष्टि का पालन करती है: JSON नियंत्रण वर्णों को \uXXXX के रूप में एस्केप करता है, JavaScript अतिरिक्त रूप से इकहरे उद्धरण और बैकटिक भी, Java ग़ैर-ASCII को UTF-16 \u अनुक्रमों में बदलता है, SQL इकहरे उद्धरण दोहरा देता है, CSV RFC 4180 के अनुसार लपेटता और दोहराता है, और XML अपनी पाँच पूर्वनिर्धारित एंटिटी इस्तेमाल करता है। अन-एस्केपर \x, \u और \u{…} रूप समझता है और ख़राब अनुक्रमों की स्थिति सहित सूचना देता है।

एस्केप की गई स्ट्रिंग अक्सर कनेक्शन स्ट्रिंग, टोकन और क्वेरी के टुकड़े होती हैं। यह स्थानीय रूप से चलता है — बेझिझक चिपकाइए।

अक्सर पूछे जाने वाले प्रश्न

JSON कॉन्फ़िग फ़ाइल के लिए कौन-सी बोली चाहिए?
JSON। यह दोहरे उद्धरण, बैकस्लैश और नियंत्रण वर्ण ठीक वैसे ही एस्केप करता है जैसे RFC 8259 माँगता है, और यूनिकोड पठनीय छोड़ देता है। आउटपुट किसी भी JSON स्ट्रिंग मान में बैठ जाता है — बिना घेरने वाले उद्धरण चिह्नों के, जो टूल आप पर छोड़ देता है।
JSON और JavaScript बोलियों में क्या अंतर है?
JavaScript अतिरिक्त रूप से इकहरे उद्धरण और बैकटिक भी एस्केप करता है, ताकि परिणाम JS की तीनों उद्धरण-शैलियों में सुरक्षित रहे। JSON को केवल दोहरे उद्धरण सँभालने होते हैं। अन-एस्केप करते समय दोनों स्वीकार्य हैं, साथ ही \x और \u{…} रूप भी जिन्हें JSON परिभाषित नहीं करता।
क्या SQL एस्केपिंग से उपयोगकर्ता इनपुट जोड़ना सुरक्षित हो जाता है?
यह सही SQL स्ट्रिंग लिटरल बनाता है (उद्धरण दोहरे किए हुए), पर अविश्वसनीय इनपुट के लिए एस्केप-फिर-जोड़ना अब भी ग़लत तरीक़ा है — पैरामीटरयुक्त क्वेरी इस्तेमाल कीजिए। यह टूल फ़िक्स्चर, माइग्रेशन और डिबगिंग के लिए है, इंजेक्शन से बचाव के लिए नहीं।
मेरी स्ट्रिंग का अन-एस्केप क्यों विफल हो रहा है?
बैकस्लैश के बाद ऐसा कुछ जो परिभाषित एस्केप न हो (\q, अधूरा \u12) ख़राब माना जाता है, और त्रुटि उस स्थान का सूचकांक बता देती है। यदि आपके पाठ में शाब्दिक विंडोज़ पथ हैं तो पहले उसे एस्केप कीजिए — C:\temp दरअसल भेस बदला हुआ टैब है।
संबंधित टूल