गैर-ASCII एस्केप का उपयोग करें। control characters के लिए \n \t \r \\ \" \b \f \/ और \uXXXX अनुक्रमों को एस्केप करता है
यह कैसे काम करता है
एस्केप करना किसी टेक्स्ट के विशेष वर्णों —लाइन ब्रेक, टैब, उद्धरण चिह्न और स्वयं बैकस्लैश— को बैकस्लैश अनुक्रमों (\n, \t, \", \\) में बदल देता है ताकि वह टेक्स्ट किसी कोड स्ट्रिंग के भीतर उसकी सिंटैक्स तोड़े बिना डाला जा सके।
हर भाषा के नियम अलग होते हैं: JSON, C/Java/JS, Python, SQL, Regex और Shell अलग-अलग वर्ण समुच्चयों को एस्केप करते हैं। उस गंतव्य की शैली चुनें जहाँ आप टेक्स्ट पेस्ट करेंगे।
अन-एस्केप उल्टा करता है: यह \n, \t, \uXXXX और समान अनुक्रमों की व्याख्या करता है और मूल टेक्स्ट लौटाता है।
उदाहरण
C:\Users\anaC:\\Users\\anaJSON और C/Java/JS में प्रत्येक बैकस्लैश को दोगुना किया जाता है ताकि यह किसी एस्केप अनुक्रम की शुरुआत से भ्रमित न हो।O'BrienO''BrienSQL में एकल उद्धरण चिह्न को दोगुना किया जाता है (ANSI मानक) ताकि उसे किसी लिटरल के भीतर शामिल किया जा सके।precio (USD)precio \(USD\)Regex में ( ) जैसे मेटाकैरेक्टर को एस्केप किया जाता है ताकि उन्हें समूहन के बजाय शाब्दिक टेक्स्ट के रूप में माना जाए।उपयोग के मामले
- किसी Windows पथ, JSON या HTML अंश को कोड स्ट्रिंग के भीतर बिना तोड़े पेस्ट करना।
- किसी SQL क्वेरी के लिए मान तैयार करना, उद्धरण चिह्नों से होने वाली सिंटैक्स त्रुटियों से बचते हुए।
- मेटाकैरेक्टर एस्केप करके शाब्दिक टेक्स्ट को नियमित अभिव्यक्ति पैटर्न में बदलना।
- किसी लॉग या सोर्स कोड से कॉपी की गई एस्केप की गई स्ट्रिंग का मूल टेक्स्ट पुनर्प्राप्त करना।
अक्सर पूछे जाने वाले प्रश्न
एस्केप शैलियों के बीच क्या अंतर है?
हर भाषा अलग अनुक्रमों को पहचानती है: JSON \' या \0 स्वीकार नहीं करता, C और Python करते हैं; SQL बैकस्लैश के बजाय उद्धरण दोगुने करता है; Regex मेटाकैरेक्टर एस्केप करता है; और Shell स्पेस तथा इंटरप्रेटर प्रतीक एस्केप करता है। इसीलिए गंतव्य की शैली चुनना उचित है।
"गैर-ASCII एस्केप करें" विकल्प क्या करता है?
यह Unicode वर्णों (उच्चारण चिह्न, इमोजी) को \uXXXX अनुक्रमों में —या Python और C में \xNN— बदल देता है ताकि टेक्स्ट उन गंतव्यों में सुरक्षित रहे जो केवल ASCII स्वीकार करते हैं।
क्या उद्धरण चिह्न एस्केप करने से SQL इंजेक्शन से सुरक्षा मिलती है?
यह मदद करता है, पर पैरामीटराइज़्ड क्वेरी की जगह नहीं लेता। अविश्वसनीय डेटा के लिए हमेशा पैरामीटर या प्रीपेयर्ड स्टेटमेंट उपयोग करें; एस्केप करना केवल एक पूरक रक्षा है।
क्या मेरा टेक्स्ट किसी सर्वर को भेजा जाता है?
नहीं। एस्केप और अन-एस्केप पूरी तरह आपके ब्राउज़र में होते हैं।