मॉड्यूल पाठ (3/4)
`एम` ध्वज: मल्टीलाइन
m (मल्टीलाइन) ध्वज के साथ एंकर ^ और $ का अर्थ बदल जाता है:
वे अब संपूर्ण स्ट्रिंग के प्रारंभ/अंत ** नहीं हैं, बल्कि ** के प्रारंभ/अंत हैं
प्रत्येक पंक्ति**. एक रेखा को \n (या आरंभ/अंत द्वारा) सीमांकित किया जाता है
स्ट्रिंग).
Pattern: ^Errore
Flag: gm
Sample: Errore: A\nInfo: B\nErrore: C
^^^^^^ ^^^^^^m के बिना यह पूर्ण शुरुआत में केवल Errore से मेल खाएगा
नमूना (1 मैच)। m के साथ, यह प्रत्येक पंक्ति की शुरुआत से मेल खाता है (2
मिलान)।
m बिंदु नहीं बदलता
एक आम भ्रम: m ध्वज बिंदु का अर्थ नहीं बदलता है
.. बिंदु अभी भी \n से मेल नहीं खाता, यहाँ तक कि m से भी। बिंदी बनाने के लिए
s फ़्लैग (मॉड्यूल 1 में शामिल) से अपनी ज़रूरत की हर चीज़ का मिलान करें।
m और s ऑर्थोगोनल हैं: आप उन्हें एक साथ उपयोग कर सकते हैं (ms), अलग से,
या न ही.
मल्टीलाइन फ़्लैग और लाइन-बाय-लाइन प्रोसेसिंग
m ध्वज ^ और $ के व्यवहार को संशोधित करता है, जिससे वे संपूर्ण स्ट्रिंग के पूर्ण प्रारंभ और अंत को देखने के बजाय, एक मल्टीलाइन टेक्स्ट ब्लॉक के भीतर प्रत्येक पंक्ति की शुरुआत और अंत (\\n द्वारा सीमांकित) से मेल खाते हैं।
इसे अजमाएं
`ERROR` से शुरू होने वाली प्रत्येक पंक्ति ढूंढें। प्रत्येक पंक्ति को \\n से अलग किया गया है; झंडे `g` और `m` का उपयोग करें।
संकेत दिखाएँ
एम ध्वज ^ को आंतरिक रेखाओं की शुरुआत से भी मेल खाता है, न कि केवल पूर्ण प्रथम वर्ण से।
3 प्रयासों के बाद समाधान उपलब्ध है
व्यायाम की समीक्षा करें
प्रत्येक पंक्ति ढूंढें जो एक अवधि के साथ समाप्त होती है। झंडे `m` और `g` के साथ `$` एंकर का उपयोग करें।
संकेत दिखाएँ
\\.$ जीएम झंडे के साथ प्रत्येक पंक्ति के अंत में अवधि से मेल खाता है, न कि केवल नमूने के अंत में।
3 प्रयासों के बाद समाधान उपलब्ध है
अतिरिक्त चुनौती
Find all lines in a multiline log that start exactly with the string `ID:` followed by a digit.
संकेत दिखाएँ
आईडी से पहले ^ का उपयोग करें: और सुनिश्चित करें कि एम ध्वज सक्रिय है।
3 प्रयासों के बाद समाधान उपलब्ध है