"यदि कोई कर्मचारी अपना काम अच्छी तरह से करना चाहता है, तो उसे पहले अपने औजारों को तेज करना होगा।" - कन्फ्यूशियस, "द एनालेक्ट्स ऑफ कन्फ्यूशियस। लू लिंगगोंग"
मुखपृष्ठ > प्रोग्रामिंग > PHP स्ट्रिंग्स से नियंत्रण वर्णों को चुनिंदा रूप से कैसे हटाएं?

PHP स्ट्रिंग्स से नियंत्रण वर्णों को चुनिंदा रूप से कैसे हटाएं?

2024-11-03 को प्रकाशित
ब्राउज़ करें:992

How to Selectively Remove Control Characters from PHP Strings?

PHP स्ट्रिंग्स से नियंत्रण वर्णों को हटाना

PHP स्ट्रिंग्स के साथ काम करते समय, कभी-कभी STX जैसे नियंत्रण वर्णों को हटाना आवश्यक होता है। Preg_replace का उपयोग करने का प्रयास करते समय, आपने पाया होगा कि इसने नियंत्रण वर्णों से परे अत्यधिक वर्णों को हटा दिया है। यहां हमारा ध्यान आपको यह दिखाने पर है कि चुनिंदा रूप से केवल नियंत्रण वर्णों को कैसे हटाया जाए।

इसे प्राप्त करने के लिए, आप निम्नलिखित कोड का उपयोग कर सकते हैं:

preg_replace('/[\x00-\x1F\x7F]/', '', $input);

यह पैटर्न हेक्साडेसिमल मानों \x00 से \x1F की सीमा के साथ-साथ मान \x7F के वर्णों से मेल खाता है और उन्हें प्रतिस्थापित करता है। इस श्रेणी में पहले 32 ASCII वर्णों के साथ-साथ DEL वर्ण भी शामिल हैं।

यदि आप लाइन फ़ीड और कैरिज रिटर्न जैसे कुछ नियंत्रण वर्णों को संरक्षित करना चाहते हैं, तो आप पैटर्न को तदनुसार समायोजित कर सकते हैं:

preg_replace('/[\x00-\x09\x0B\x0C\x0E-\x1F\x7F]/', '', $input);

इस पैटर्न का उपयोग करके, आप सभी नियंत्रण वर्ण हटा सकते हैं लाइन फीड (\n) और कैरिज रिटर्न (\r) को छोड़कर।

यह ध्यान रखना महत्वपूर्ण है कि ereg_replace को PHP >= 5.3.0 में हटा दिया गया है और PHP >= 7.0.0 में हटा दिया गया है। अनुकूलता सुनिश्चित करने के लिए, इसके बजाय preg_replace का उपयोग करें:

preg_replace('/[[:cntrl:]]/', '', $input);
नवीनतम ट्यूटोरियल अधिक>

चीनी भाषा का अध्ययन करें

अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।

Copyright© 2022 湘ICP备2022001581号-3