ब्रैकेट अभिव्यक्तियाँ और चरित्र वर्ग
हमारी नियमित अभिव्यक्ति में किसी दिए गए स्थान पर किसी भी चरित्र का मिलान करने के अलावा, हम इसका उपयोग करके वर्णों के निर्दिष्ट सेट से एक एकल वर्ण का मिलान भी कर सकते हैं ब्रैकेट अभिव्यक्तियाँ. ब्रैकेट अभिव्यक्तियों के साथ, हम मिलान करने के लिए वर्णों का एक सेट निर्दिष्ट कर सकते हैं (उन वर्णों सहित जिन्हें अन्यथा मेटाचैक्टर के रूप में व्याख्या किया जाएगा)। इस उदाहरण में, दो वर्ण सेट का उपयोग करते हुए:
[मुझे@लिनक्सबॉक्स ~]$ grep -h '[bg]zip' dirlist*.txt
bzip2 bzip2recover gzip
[मुझे@लिनक्सबॉक्स ~]$ grep -h '[bg]zip' dirlist*.txt
bzip2 bzip2recover gzip
हम किसी भी पंक्ति से मेल खाते हैं जिसमें स्ट्रिंग "bzip" या "gzip" शामिल है।
एक सेट में किसी भी संख्या में वर्ण हो सकते हैं, और कोष्ठक के भीतर रखे जाने पर मेटाकैरेक्टर अपना विशेष अर्थ खो देते हैं। हालाँकि, ऐसे दो मामले हैं जिनमें मेटाकैरेक्टर का उपयोग ब्रैकेट अभिव्यक्तियों के भीतर किया जाता है, और उनके अलग-अलग अर्थ होते हैं। पहला कैरेट है (^), जिसका उपयोग निषेध को इंगित करने के लिए किया जाता है; दूसरा डैश है (-), जिसका उपयोग वर्ण श्रेणी को इंगित करने के लिए किया जाता है।