2011-01-18 11 views
21

मैं नियमित अभिव्यक्तियों के लिए काफी नया हूं। क्या आप मुझे एक पैटर्न बनाने में मदद कर सकते हैं, जो पूरे शब्दों से मेल खाता है, जिसमें विशिष्ट भाग होता है? उदाहरण के लिए, अगर मैं एक पाठ स्ट्रिंग है "एक रेगुलर एक्सप्रेशन मिलान प्रदर्शन करना" और अगर मैं के लिए व्यक्त खोज, यह मेरे अभिव्यक्ति देना shuld, अगर मैं रूप के लिए खोज, यह मेरे प्रदर्शन करना देना चाहिए और इतने पर। विचार मिला?PHP preg_match पूरे शब्द खोजने के लिए

उत्तर

38
preg_match('/\b(express\w+)\b/', $string, $matches); // matches expression 
preg_match('/\b(\w*form\w*)\b/', $string, $matches); // matches perform, 
                // formation, unformatted 

कहाँ:

  • \b एक शब्द सीमा
  • \w+ है एक या अधिक "शब्द" चरित्र *
  • \w* शून्य या अधिक है कि "शब्द" वर्ण

0 पर मैनुअल देखें पीसीआरई के लिए।


* नोट: हालांकि नहीं वास्तव में एक "शब्द चरित्र", अंडरस्कोर _ भी चरित्र वर्ग \w int शामिल है।

+0

धन्यवाद goreSplatter! यह काम करता हैं! – tintix

+0

यह बहुत अच्छा है। बस मैं क्या देख रहा था ... +1 – OrPaz

+0

\ बी शब्द सीमा, अच्छा ... मैंने अब तक क्यों नहीं देखा है? उपयोगी। – Andrew

4

यह 'प्रदर्शन' से मेल खाता है:

\b(\w*form\w*)\b 

यह मैचों 'अभिव्यक्ति':

\b(\w*express\w*)\b 
संबंधित मुद्दे