.
एक php regex में वर्ण एक नई रेखा को छोड़कर सभी पात्रों को स्वीकार करता है। न्यूलाइन समेत सभी पात्रों को स्वीकार करने के लिए मैं क्या उपयोग कर सकता हूं?PHP रेगेक्स कोई भी कैरेक्टर
उत्तर
यह आमतौर पर सभी पात्रों पर कब्जा करने के लिए किया जाता है:
[\s\S]
आप "का कोई अन्य संयोजन इस्तेमाल कर सकते हैं टाइप-एक्स + गैर-प्रकार-एक्स "उसी तरह से:
[\d\D]
[\w\W]
लेकिन [\s\S]
के लिए एक आशुलिपि के रूप में सम्मेलन द्वारा मान्यता प्राप्त है" वास्तव में कुछ भी "।
यदि आप रेगेक्स को "s"
संशोधक के माध्यम से रेगेक्स को "डॉटल" (ए.के.ए. "सिंगल-लाइन") मोड में स्विच करते हैं तो आप .
का भी उपयोग कर सकते हैं। कभी-कभी यह एक व्यवहार्य समाधान नहीं है (उदाहरण के लिए, यदि आप पूरे regex को संशोधित नहीं करना चाहते हैं), एक ब्लैक बॉक्स में गतिशील रेगेक्स। ऐसे मामलों में अन्य विकल्प समान होते हैं, भले ही रेगेक्स कॉन्फ़िगर किया गया हो।
यह .
वर्ण है जिसका अर्थ है "हर चरित्र" (संपादित करें: ओपी संपादित)। और अगर आप उदाहरण के लिए, अपने regexp करने का विकल्प रों जोड़ने की जरूरत:
preg_match("`(.+)`s", "\n");
क्या रेगेक्सपी की शुरुआत और अंत में आगे की कमी नहीं होनी चाहिए? – Entity
हो सकता है, लेकिन delimiters की कोई भी जोड़ी करेगा। –
PHP में नहीं। इसे एक डिलीमीटर (आप इसे चुन सकते हैं) के साथ शुरू करना और समाप्त करना है, और अंतिम डिलीमीटर से पहले हर चरित्र एक विकल्प है (यानी यू के लिए असहज, मैं केस-असंवेदनशील, आदि के लिए) –
[.\n]+
काम नहीं होगा?
कैसे (.|\n)+
? मैंने इसका परीक्षण किया और ऐसा लगता है कि यह काम करता है।
मुझे पूरा यकीन है कि यह वास्तव में आप जो पूछ रहे थे उसकी शाब्दिक व्याख्या है।
नहीं, यह नहीं होगा। – SLaks
एक चरित्र वर्ग में '.' का अर्थ" कोई चरित्र "नहीं है। इसका मतलब है "एक बिंदु"। चरित्र वर्गों का अपना वाक्यविन्यास होता है। ;-) – Tomalak
@ टोमालक: स्पष्टीकरण के लिए धन्यवाद, मुझे अभी यह एहसास हुआ। मुझे लगता है कि मुझे पोस्ट करने से पहले मुझे अपने उत्तरों का परीक्षण करना चाहिए। मैंने अभी अपना जवाब संपादित कर लिया है। – gnomed
पीएचपी मैनुअल page for Dot कहा गया है कि: PCRE_DOTALL विकल्प सेट कर दिया जाता
, तो डॉट्स नई-पंक्तियों के साथ-साथ मेल खाते हैं।
यहां एक महत्वपूर्ण चीज़ गायब है। [\s\S]
एक चरित्र से मेल खाता है, जबकि एक नई रेखा एक चरित्र अनुक्रम हो सकती है। (विंडोज दो अक्षरों का उपयोग करता है: \r\n
।) .
(DOT_ALL संशोधक के साथ) और न ही [\s\S]
न्यूलाइन अनुक्रम से मेल खाता है। किसी भी चरित्र या किसी भी नई लाइन से मेल खाने का सबसे अच्छा तरीका (.|\R)
है, "एक नई लाइन या एक नई रेखा को छोड़कर सबकुछ"। \R
मैचों \n
, \r
और \r\n
।
- 1. जावा रेगेक्स कैरेक्टर क्लास
- 2. PHP रेगेक्स क्रैशिंग अपाचे
- 3. रेगेक्स अंतिम स्पेस कैरेक्टर से मेल खाने के लिए
- 4. PHP रेगेक्स ग्लोब()
- 5. रेगेक्स जावा
- 6. PHP रेगेक्स - मान्य फ्लोट नंबर
- 7. गोलांग रेगेक्स प्रतिस्थापन कुछ भी नहीं करता
- 8. किसी भी भाषा में शब्द वर्णों के लिए रेगेक्स
- 9. PHP रेगेक्स डेलीमीटर, बिंदु क्या है?
- 10. व्हाइटस्पेस कैरेक्टर
- 11. कोई भी
- 12. स्पेस कैरेक्टर
- 13. फ्रांसीसी कैरेक्टर
- 14. एक्स कैरेक्टर
- 15. PHP किसी भी आउटपुट
- 16. क्या PHP में लिखे गए कोई भी एसवीएन सर्वर हैं?
- 17. <? Php bp_activity_id()?> दोस्त में, कोई भी खरोंच तक?
- 18. जांचें कि कोई php स्क्रिप्ट अभी भी चल रही है
- 19. ओओपी PHP के लिए अच्छा प्रशिक्षण स्रोत, कोई भी?
- 20. जावा के कैरेक्टर के बराबर PHP .getNumericValue (char c)?
- 21. कैरेक्टर एनकोडिंग्स की सूची
- 22. मैं जावा में इनपुट कैरेक्टर-बाय-कैरेक्टर कैसे पढ़ूं?
- 23. कैरेक्टर सेट विशेष वर्ण
- 24. रेगेक्स
- 25. रेगेक्स
- 26. Jquery वाइल्ड कार्ड कैरेक्टर
- 27. कैरेक्टर एन्कोडिंग डिटेक्शन एल्गोरिदम
- 28. कैरेक्टर सेट जो ASCII
- 29. टेक्स्टरेरा के कैरेक्टर एन्कोडिंग
- 30. रेगेक्स
बिल्कुल सही! धन्यवाद! – Entity
ऐसा लगता है कि यह सभी पात्रों के बजाय एक चरित्र के लिए है .... –
और आप ऐसा क्यों सोचेंगे? – Tomalak