लगभग सभी मेटाएक्टैक्टर (डॉट सहित .
, +
, *
और ?
क्वांटिफायर, एंड-ऑफ-स्ट्रिंग एंकर $
, आदि) का चरित्र वर्गों में कोई विशेष अर्थ नहीं है, कुछ उल्लेखनीय अपवादों के साथ:
- समापन कोष्ठक
]
, स्पष्ट कारणों से - कैरेट
^
, जिसका उपयोग वर्ण वर्ग को नकारने के लिए किया जाता है (जैसे:[^ab]
किसी भी वर्ण से मेल खाता है लेकिनa
औरb
)। - हाइफ़न
-
, जिसका उपयोग किसी श्रेणी को दर्शाने के लिए किया जाता है (उदाहरण:[0-9]
किसी भी अंक से मेल खाता है)
हालांकि, चरित्र वर्ग के भीतर रणनीतिक स्थानों में रखे जाने पर इन्हें बिना एस्केप किए अभी भी जोड़ा जा सकता है:
- क्लोजिंग ब्रैकेट को ओपनिंग ब्रैकेट के ठीक बाद में रखा जा सकता है, जैसे:
[]a]
]
से मेल खाता है याa
। - कैरेट कहीं भी लेकिन रखा जा सकता है ओपनिंग ब्रैकेट के बाद, जैसे:
[a^]
^
. से मेल खाता है याa
- हाइफ़न को ओपनिंग ब्रैकेट के ठीक बाद या क्लोजिंग ब्रैकेट से पहले रखा जा सकता है, जैसे:
[-a]
और[a-]
दोनोंa
. से मेल खाते हैं और-
।
अधिक जानकारी POSIX regex
(धन्यवाद तोमालक गेरेकल!)