2009-09-28 15 views
13

मैं preg_replace को बिल्कुल समझ नहीं सकता, यह सिर्फ मुझे चीनी दिखता है, वैसे भी मुझे स्ट्रिंग से "&page-X" को हटाने की आवश्यकता है।सरल preg_replace

X कई कोर्स होने के नाते, यदि किसी के पास शुरुआती के लिए उपयोगी preg_replace ट्यूटोरियल का लिंक है जो आसान भी होगा!

उत्तर

17

वास्तव में नियमित अभिव्यक्ति के लिए बुनियादी वाक्य रचना, के रूप में preg_replace और च द्वारा समर्थित riends, सीखना बहुत आसान है। इसके बारे में एक स्ट्रिंग के रूप में सोचें जो कुछ विशेष वर्ण वाले कुछ वर्णों के साथ पैटर्न का वर्णन करता है।

अपने बहुत ही सरल मामले में, एक संभव पैटर्न है: सही + (यहाँ: \d) से पहले अभिव्यक्ति दोहराएँ: एक

&page-\d+ 

एक अंकों (अंकीय वर्ण 0-9) और + अर्थ अर्थ \d के साथ या अधिक बार। अन्य सभी पात्र सिर्फ खुद का प्रतिनिधित्व करते हैं।

इसलिए, पैटर्न से ऊपर निम्नलिखित तार के किसी भी मेल खाता है:

&page-0 
&page-665 
&page-1234567890 

के बाद से preg कार्यों एक पर्ल-संगत सिंटैक्स का उपयोग करें और नियमित अभिव्यक्ति पर्ल में स्लैश (/) के बीच चिह्नित हैं, आप के चारों ओर करने के लिए है स्लैश में पैटर्न:

$after = preg_replace('/&page-\d+/', '', $before); 

वास्तव में, आपको अन्य वर्णों का उपयोग कर सकते हैं:

$after = preg_replace('#&page-\d+#', '', $before); 

समर्थित वाक्यविन्यास के पूर्ण संदर्भ के लिए, PHP manual देखें।

+0

तो अगर मैं "/ पेज -1" – bluedaniel

+0

को प्रतिस्थापित करना चाहता हूं तो उसे प्राप्त हुआ, #/पृष्ठ- \ d + #, आपके पूर्ण उत्तर के लिए धन्यवाद – bluedaniel

संबंधित मुद्दे