2012-09-19 13 views
5

में एक नियमित अभिव्यक्ति के */भाग को कैसे टिप्पणी करते हैं, मेरे पास preg_replace फ़ंक्शन है जिसे मैं कॉल कर रहा हूं और पठनीयता के लिए कई पंक्तियां डाल रहा हूं लेकिन regex में */ वर्ण टिप्पणियों को गड़बड़ कर देता है। मैं इन सभी लाइनों को एक पंक्ति पर ले जाने के बिना कैसे टिप्पणी कर सकता हूं?आप PHP

return preg_replace('/.*/', 
    'Lorem Ipsum' . 
    'More Lorem Ipsum' 
    , 
    $foo); 

उत्तर

9

आप एक अलग regex पैटर्न सीमांकक चरित्र इस्तेमाल कर सकते हैं:

return preg_replace('#.*#', 
    'Lorem Ipsum' . 
    'More Lorem Ipsum' 
    , 
    $foo); 

संपादित करें: सीमांकक चरित्र PCRE (पर्ल कम्पैटिबल नियमित Expresssion) की एक विशेषता है। एक अलग डेलीमीटर का उपयोग करने के लिए कोई PHP कॉन्फ़िगरेशन की आवश्यकता नहीं है।

Regexp Quote-Like Operators

... आप गैर-शब्दसंख्यात्क, गैर-सफ़ेद सीमांकक के रूप में वर्ण के किसी भी जोड़े उपयोग कर सकते हैं। यह विशेष रूप से पथ नाम से मेल खाने के लिए उपयोगी है जिसमें एलटीएस (टूथपिक सिंड्रोम झुकाव) से बचने के लिए "/" होता है।

Quote and Quote-like Operators

गैर bracketing सीमांकक एक ही चरित्र सामने और पीछे, लेकिन ASCII कोष्ठक (दौर, कोण, वर्ग, घुंघराले) सभी घोंसला

की चार प्रकार का उपयोग ये सभी मान्य हैं:

'/.*/' 
'#.*#' 
'{.*}' /* Note that '{.*{' would be incorrect. */ 

01 पर एक नज़र डालें वास्तव में एक अच्छा अवलोकन देखने के लिए।

+0

और PHP स्वचालित रूप से विभिन्न डिलीमीटर चरित्र का पता लगाता है? या मुझे इसे कहीं और सेट करना है? – BFTrick

+0

मैंने डिलीमीटर चरित्र के बारे में आपके प्रश्न का उत्तर देने के लिए अभी अधिक जानकारी के साथ उत्तर अपडेट किया है। – jimp

+1

आप, महोदय, भयानक हैं। :) – BFTrick