के अंदर केवल मिलान करने वाले xxx ($ 1) yyy पैटर्न को प्रतिस्थापित करने के लिए कैसे करें I स्ट्रिंग के केवल मिलान भाग को मिटाने के लिए नियमित अभिव्यक्ति का उपयोग करने का प्रयास कर रहा हूं। मैं preg_replace
फ़ंक्शन का उपयोग कर रहा हूं और मेल खाने वाले भाग के चारों ओर कोष्ठक डालकर मिलान करने वाले टेक्स्ट को हटाने का प्रयास किया है। उदाहरण:preg_replace चयनकर्ता
preg_replace('/text1(text2)text3/is','',$html);
यह पूरे स्ट्रिंग को '' 'के साथ बदल देता है। मैं केवल टेक्स्ट 2 को मिटाना चाहता हूं, लेकिन टेक्स्ट 1 और टेक्स्ट 3 को बरकरार रखना चाहता हूं। मैचों से मेल खाने वाली स्ट्रिंग के हिस्से से मैं कैसे मिलान और प्रतिस्थापित कर सकता हूं?
कृपया \\ n के बजाय $ n का उपयोग करें। – NikiC
@NikiC क्या यह केवल शैली है या आपके पीछे इसका कोई कारण है? – aorcsik
$ n का उपयोग \ n n मैन्युअल उद्धरण, आधिकारिक अनुशंसा है: "[...] में फॉर्म \\ n या (PHP 4.0.4) $ n के संदर्भ हो सकते हैं, बाद के रूप में पसंदीदा एक "। मुझे इसके पीछे सटीक तर्क नहीं पता है, लेकिन $ सिंटैक्स कम से कम एक है) अधिक पठनीय और बी) $ {n} के लिए भी समर्थन है। शायद अतिरिक्त कारण हैं। – NikiC