PHP में regex में [\ s \ S] * का क्या अर्थ है? [\S\s]*
वास्तव में प्रत्येक स्ट्रिंग से .*
जैसा मेल खाता है?[ S s] * PHP में regex में क्या मतलब है?
उत्तर
डिफ़ॉल्ट रूप से .
नई लाइनों से मेल नहीं खाता - [\s\S]
उस समस्या के आसपास एक हैक है।
यह जावास्क्रिप्ट में आम है, लेकिन PHP में आप सभी वर्णों को डॉट मिलान करने के लिए /s
ध्वज का उपयोग कर सकते हैं।
.
मेटा कैरेक्टर किसी न्यूलाइन को छोड़कर किसी भी चरित्र से मेल खाता है। तो पैटर्न .*
जिसका उपयोग किसी भी चीज़ से मेल खाने के लिए किया जाता है, यदि आप न्यूलाइन से मेल खाते हैं तो भी काम नहीं करेगा।
preg_match('/^.*$/',"hello\nworld"); // returns 0
[\s\S]
जो खाली स्थान के पात्रों और गैर-सफ़ेद पात्रों में से एक चरित्र वर्ग है से मेल खाता है एक नई पंक्ति सहित किसी भी चरित्र इतना [\d\D]
, [\w\W]
है। तो आपका पैटर्न [\s\S]*
अब कुछ भी मेल खाता है।
preg_match('/^[\s\S]$/s',"hello\nworld"); // returns 1
एक वैकल्पिक बनाने के लिए .
मैच कुछ भी (एक नई पंक्ति सहित) एक s
संशोधक का उपयोग करने के लिए है।
preg_match('/^(?s).*(?-s)$/',"hello\nworld"); // returns 1
(?s)
s
मोड चालू करता है और (?-s)
बदल जाता है, तो बंद:
preg_match('/^.*$/s',"hello\nworld"); // returns 1
s
संशोधक का उपयोग करके के वैकल्पिक रास्ते में-परत के रूप में यह है। एक बार .
को बंद करने के बाद एक नई लाइन से मेल नहीं खाएगा।
क्या अंतिम बिट केवल आसन्न '.' के व्यवहार को संशोधित करता है? मैंने पहले उस वाक्यविन्यास को नहीं देखा है। – BoltClock
@ बोल्टक्लॉक - आप झंडे इनलाइन को सेट या साफ़ कर सकते हैं - यह सभी बिंदुओं के लिए काम करता है जब तक कि आप इसे साफ़ न करें: '(? Smi)। * Abc (? - smi)। * ABc' – Kobi
@ कोबी: आह, यह वास्तव में अच्छा है! – BoltClock
[\s\S]
एक चरित्र सेट जो लाइन ब्रेक सहित किसी भी चरित्र से मेल खाता है।
.
लाइन ब्रेक को छोड़कर किसी भी चरित्र से मेल खाता है।
- 1. जावास्क्रिप्ट में regex \ S का अर्थ क्या है?
- 2. नियमित अभिव्यक्ति \\ s *, \\ s * क्या करती है?
- 3. पर्ल में, एस/^ \ s + // और s/\ s + $ // के बीच क्या अंतर है?
- 4. printf में "%। * S" का क्या अर्थ है?
- 5. क्या% s
- 6. regex को समझना [\ s \ एस - [<>]] *
- 7. [\ s \ S] * के बीच क्या अंतर है? तथा ।*?
- 8. पायथन में% s का क्या अर्थ है?
- 9. sprintf_s sprintf (newpath, "% s% s", ...) का एनालॉग क्या है?
- 10. पाइथन "php -s" के बराबर
- 11. क्रोम में Ctrl + S preventDefault
- 12. % s और% d
- 13. क्या/s/g और/\ s +/g के बीच कोई अंतर है?
- 14. Rails में ActiveRecord में एकाधिक योग() s
- 15. % * s प्रारूप विनिर्देशक का क्या अर्थ है?
- 16. रूबी पाइथन के बराबर क्या है = "हैलो,% s।% S कहां है?" % ("जॉन", "मैरी") `
- 17. एप्लेट v/s सर्वलेट
- 18. Ctrl + S जब CommandT
- 19. एकाधिक बाइट [] s
- 20. regsvr32/s/c "myocx.ocx"
- 21. सी प्रोजेक्ट में .s फ़ाइलों की भूमिका क्या है?
- 22. सिंगलटन v/s वर्ग
- 23. get_absolute_url - Django`s साइटमैप
- 24. MongoDB v/s Redis
- 25. पोस्टग्रेस रेगेक्स: \ s और \ S और चरित्र वर्ग का व्यवहार गलत लगता है
- 26. सी में% s कैसे मुद्रित करें?
- 27. "विधि '% s' आधार प्रकार '% s' की आभासी विधि छुपाता है"। वास्तव में क्या छुपाया जा रहा है?
- 28. PHP में @ मतलब क्या है?
- 29. हास्केल में `~` क्या मतलब है?
- 30. एस/^ \ s + | \ s + $ // g क्यों है; दो अलग-अलग प्रतिस्थापन से बहुत धीमी है?
हमेशा 's' संशोधक होता है ... – BoltClock
' .' नई लाइन से मेल खाता है? – yoyo
@ बोल्टक्लॉक - धन्यवाद, मैं बस इसे प्राप्त कर रहा था, बस पुष्टि करना था कि यह PHP में कैसे किया गया है। – Kobi