चेतावनी: preg_replace (): अज्ञात संशोधक 'जी'


80

इस नियमित अभिव्यक्ति से मुझे एक त्रुटि मिली ...

$strTmp = preg_replace('~(<\/CharacterStyleRange>(.*?)\n*</CharacterStyleRange>)~gim ' , "</CharacterStyleRange>", $strTmp);

त्रुटि

चेतावनी : preg_replace (): अज्ञात संशोधक 'जी' .... में

क्यों?

जवाबों:


163

gके साथ निहित है preg_replace()। आपको इसे शामिल करने की आवश्यकता नहीं है।


45

आपको वैश्विक ध्वज निर्दिष्ट करने की आवश्यकता नहीं है। से प्रलेखन , वहाँ एक अलग पैरामीटर (है $limit) बनाने के लिए प्रतिस्थापन की संख्या निर्दिष्ट करने के लिए इस्तेमाल:

सीमा प्रत्येक विषय स्ट्रिंग में प्रत्येक पैटर्न के लिए अधिकतम संभव प्रतिस्थापन। -1 की कमी (कोई सीमा नहीं)।

इसलिए, जब तक आप इस पैरामीटर के लिए एक सकारात्मक संख्या निर्दिष्ट नहीं करते, यह डिफ़ॉल्ट रूप से सभी घटनाओं को बदल देगा:

$strTmp = preg_replace('~(<\/CharacterStyleRange>(.*?)\n*</CharacterStyleRange>)~im ' , "</CharacterStyleRange>", $strTmp);

-2

वहाँ एक है /स्ट्रिंग बदल रहे हैं में पत्र जी से पहले।


यह सिर्फ मेरे लिए "ग्लासहाउस इमेजेज / गेटी इमेजेस" के लिए उस त्रुटि को फेंक दिया, मेरा अनुमान है कि प्रीग_ देखता है कि एस्केप चार के रूप में
— सेपरल्लो
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.