स्ट्रिंग में सभी गैर प्रिंट करने योग्य वर्णों को कैसे हटाएं और कुछ रखें? - PHP, regex, preg-replace, विशेष-वर्ण, गैर-प्रिंटिंग-वर्ण

मैं इसका उपयोग कर रहा हूँ

$string = preg_replace("/[x00-x1Fx7FxA0]/u", "", $string);

वह रेगेक्स इसी कड़ी से है PHP: एक स्ट्रिंग में सभी गैर प्रिंट करने योग्य वर्ण कैसे निकालें?

रेगेक्स निकाल रहा है n लेकिन मैं इसे रखना चाहूंगा। मुझे क्या करना चाहिए?

मुझे लगता है n है 000A, इसलिए मैंने कुछ इस तरह की कोशिश की है (यह काम करने वाले सभी रेगेक्स को रोक देगा) $string = preg_replace("/[x00-x1Fx7FxA0[ˆx0A]]/u", "", $string);

मैं किसी भी मदद की सराहना करता हूं।

उत्तर:

उत्तर № 1 के लिए 1

क्षेत्र x00-x1F शामिल x0A

आपको इस श्रेणी को विभाजित करना होगा।

$string = preg_replace("/[x00-x09x0B-x1Fx7FxA0]/u", "", $string);

उत्तर № 2 के लिए 1

मूल रेगेक्स में न्यूनतम परिवर्तन:

/(?!n|r)[x00-x1Fx7F-xFF]/u

लाइन फीड और गाड़ी के रिटर्न से मेल न खाने के लिए एक नकारात्मक रूप का उपयोग करता है।


जवाब के लिए 0 № 3

इसे इस्तेमाल करे

[x00-x1Fx7FxA0[^x0A^x0d]]

व्याख्या:

x0A - लाइन फीड (n)

x0d - गाड़ी वापसी (आर)

उदाहरण:

https://regexr.com/3k3bm


संबंधित सवाल
सबसे लोकप्रिय