ToolHub
View All Posts

Regex चीट शीट और सामान्य पैटर्न

रेगुलर एक्सप्रेशन, या regex, लगभग सभी प्रोग्रामिंग भाषाओं और टेक्स्ट एडिटरों में उपयोग किए जाने वाले शक्तिशाली पैटर्न मिलान उपकरण हैं। जबकि सिंटैक्स पहली नज़र में गूढ़ लग सकता है, Regex में महारत हासिल करने से आप सटीकता के साथ टेक्स्ट को खोज, सत्यापित, निकाल और रूपांतरित कर सकते हैं जिसके लिए प्रक्रियात्मक कोड में दर्जनों पंक्तियाँ लग सकती हैं। यह गाइड आवश्यक सिंटैक्स, सामान्य पैटर्न और व्यावहारिक सुझावों को कवर करती है जो आपको जानना चाहिए।

बुनियादी Regex सिंटैक्स चीट शीट

वर्ण वर्ग

पैटर्नअर्थउदाहरण
.न्यूलाइन को छोड़कर कोई भी वर्णa.c abc, a1c, a c से मिलान करता है
\dकोई भी अंक (0-9)\d\d 42 से मिलान करता है
\Dकोई भी गैर-अंक\D a, !, रिक्त स्थान से मिलान करता है
\wशब्द कैरेक्टर (a-z, A-Z, 0-9, _)\w+ hello_123 से मिलान करता है
\Wगैर-शब्द वर्ण\W @, #, रिक्त स्थान से मिलान करता है
\sव्हाइटस्पेस वर्ण (स्पेस, टैब, न्यूलाइन)a\sb a b से मिलान करता है
\Sगैर-व्हाइटस्पेस वर्ण\S+ hello से मिलान करता है
[abc]सेट में कोई भी वर्ण[aeiou] स्वरों से मिलान करता है
[^abc]सेट में न होने वाला कोई भी कैरेक्टर[^0-9] गैर-अंकों से मिलान करता है
[a-z]कैरेक्टर रेंज[A-Za-z] किसी भी अक्षर से मिलान करता है

क्वांटिफ़ायर

पैटर्नअर्थउदाहरण
*शून्य या अधिक बारab*c ac, abc, abbc से मिलान करता है
+एक या अधिक बारab+c abc, abbc से मिलान करता है
?शून्य या एक बारcolou?r color, colour से मिलान करता है
{n}ठीक n बार\d{4} 4 अंकों से मिलान करता है
{n,}n बार या अधिक\d{2,} 2 या अधिक अंकों से मिलान करता है
{n,m}n से m बार\d{3,5} 3-5 अंकों से मिलान करता है

एंकर और सीमाएँ

पैटर्नअर्थउदाहरण
^स्ट्रिंग या पंक्ति की शुरुआत^Hello शुरुआत में Hello से मिलान करता है
$स्ट्रिंग या पंक्ति का अंतworld$ अंत में world से मिलान करता है
\bशब्द सीमा\bcat\b अलग cat से मिलान करता है
\Bगैर-शब्द सीमा\Bcat scattered से मिलान करता है

समूहीकरण और विकल्प

पैटर्नअर्थउदाहरण
(abc)कैप्चर समूह(ab)+ abab से मिलान करता है
(?:abc)गैर-कैप्चरिंग समूह(?:ab)+ abab से मिलान करता है
a|bविकल्प (या)cat|dog cat या dog से मिलान करता है
\1समूह 1 का बैकरेफ़रेंस(\w)\1 aa, bb से मिलान करता है
abc)नामित कैप्चर समूहname से संदर्भित

सामान्य Regex पैटर्न

वेब डेवलपमेंट और डेटा सत्यापन में सबसे अधिक उपयोग किए जाने वाले Regex पैटर्न नीचे दिए गए हैं:

ईमेल सत्यापन

एक व्यावहारिक ईमेल Regex जो अत्यधिक सख्त हुए बिना अधिकांश अमान्य पतों को पकड़ता है: ^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$ । यह पैटर्न स्थानीय भाग में सामान्य वर्णों की अनुमति देते हुए और कम से कम दो वर्णों के TLD वाले मान्य डोमेन की आवश्यकता रखते हुए बुनियादी ईमेल संरचना को सत्यापित करता है।

URL सत्यापन

HTTP और HTTPS URL से मिलान: ^https?:\/\/(www\.)?[a-zA-Z0-9-]+\.[a-zA-Z]{2,}(\/[^\s]*)?$ । यह पैटर्न वैकल्पिक www उपसर्ग, डोमेन नाम और वैकल्पिक पथ वाले URL से मिलान करता है।

फ़ोन नंबर (US)

विभिन्न प्रारूपों में US फ़ोन नंबर: ^\(?\d{3}\)?[-.\s]?\d{3}[-.\s]?\d{4}$ । यह पैटर्न (555) 123-4567, 555-123-4567 और 5551234567 जैसे प्रारूपों को संभालता है।

IP पता (IPv4)

IPv4 पता सत्यापन: ^(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)$ । यह पैटर्न सुनिश्चित करता है कि प्रत्येक ऑक्टेट 0 और 255 के बीच हो।

दिनांक (YYYY-MM-DD)

ISO दिनांक प्रारूप: ^\d{4}-(0[1-9]|1[0-2])-(0[1-9]|[12]\d|3[01])$ । यह पैटर्न प्रारूप संरचना को सत्यापित करता है लेकिन प्रति माह मान्य दिनों की जाँच नहीं करता।

हेक्स कलर कोड

CSS हेक्साडेसिमल रंग से मिलान: ^#?([0-9a-fA-F]{3}|[0-9a-fA-F]{6})$ । यह पैटर्न 3-अंकीय शॉर्टहैंड (#fff) और 6-अंकीय (#ffffff) प्रारूपों से मिलान करता है।

उन्नत तकनीकें

लुकअहेड और लुकबिहाइंड

लुकअहेड और लुकबिहाइंड एसर्शन आपको केवल तभी मिलान करने देते हैं जब कोई पैटर्न किसी अन्य पैटर्न के बाद (या पहले) मौजूद हो (या न हो), बिना आसपास के टेक्स्ट को मिलान परिणाम में शामिल किए।

लालची बनाम आलसी मिलान

<.*>bold<.*?>" से मिलान करता है।

प्रो टिप: HTML टैग या उद्धरण जैसे डेलिमीटर के बीच सामग्री निकालते समय, बहुत अधिक टेक्स्ट मिलान से बचने के लिए हमेशा आलसी क्वांटिफ़ायर का उपयोग करें। लालची मिलान Regex बग का सबसे आम स्रोत है।

Regex प्रदर्शन सुझाव

Regex का परीक्षण और डिबगिंग

Regex पैटर्न को तैनात करने से पहले, हमेशा वास्तविक इनपुट के साथ परीक्षण करें। एक इंटरैक्टिव Regex परीक्षक का उपयोग करें जो वास्तविक समय में मिलान को हाइलाइट करता है और पैटर्न के प्रत्येक भाग की व्याख्या करता है। इससे आपको किनारे के मामलों को पकड़ने और यह समझने में मदद मिलती है कि पैटर्न विशिष्ट इनपुट से क्यों मिलान करता है या नहीं करता। इंटरैक्टिव रूप से अपने पैटर्न बनाने और परीक्षण करने के लिए हमारा मुफ़्त Regex परीक्षक आज़माएँ।

हमारे मुफ़्त टूल का उपयोग करके अपने Regex पैटर्न बनाएँ, परीक्षण करें और डीबग करें।

रेगुलर एक्सप्रेशन टेस्टर आज़माएँरेगुलर एक्सप्रेशन चीट शीट

अक्सर पूछे जाने वाले प्रश्न

लालची और आलसी Regex मिलान में क्या अंतर है?

लालची क्वांटिफ़ायर जितना संभव हो उतना टेक्स्ट मिलान करते हैं, जबकि आलसी क्वांटिफ़ायर जितना संभव हो कम टेक्स्ट मिलान करते हैं। क्वांटिफ़ायर के बाद प्रश्न चिह्न जोड़ने से यह आलसी हो जाता है। उदाहरण के लिए, .* सबसे लंबी संभव स्ट्रिंग से मिलान करता है, जबकि .*? सबसे छोटी से मिलान करता है।

क्या Regex सभी प्रोग्रामिंग भाषाओं में समान है?

नहीं, Regex कार्यान्वयन भाषाओं के बीच भिन्न होता है। अधिकांश बुनियादी POSIX सिंटैक्स का समर्थन करते हैं, लेकिन लुकबिहाइंड, नामित समूह और Unicode समर्थन जैसी उन्नत सुविधाएँ भिन्न होती हैं। JavaScript का ऐतिहासिक रूप से सीमित Regex समर्थन था, लेकिन हाल के वर्षों में कई सुविधाएँ जोड़ी गई हैं।

क्या Regex HTML या XML को पार्स कर सकता है?

नहीं, Regex विश्वसनीय रूप से HTML या XML को पार्स नहीं कर सकता क्योंकि वे नेस्टेड संदर्भ-मुक्त भाषाएँ हैं। Regex में नेस्टिंग गहराई या संतुलित टैग की कोई अवधारणा नहीं है। उचित HTML या XML पार्सर का उपयोग करें। Regex HTML से सरल पैटर्न निकाल सकता है, लेकिन जटिल संरचनाओं पर विफल हो जाता है।

Regex में लुकअहेड और लुकबिहाइंड क्या हैं?

<=pattern) सकारात्मक लुकबिहाइंड है, यदि पैटर्न पहले है तो मिलान करता है। नकारात्मक संस्करण = के बजाय ! का उपयोग करते हैं।

Regex को केस-इनसेंसिटिव कैसे बनाएँ?

समापन डेलिमीटर के बाद i फ़्लैग जोड़ने से पूरा पैटर्न केस-इनसेंसिटिव हो जाता है। JavaScript में, /pattern/i का उपयोग करें। Python में, फ़्लैग के रूप में re.IGNORECASE या re.I का उपयोग करें। आप विशिष्ट भागों को केस-इनसेंसिटिव बनाने के लिए इनलाइन (?i) का भी उपयोग कर सकते हैं।

ToolHub's collection of 300+ free online tools including regex tester, cheat sheets, and more — no sign-up required.