Skip to main content
CheckTown
डेव टूल

Regex टेस्टिंग: रेगुलर एक्सप्रेशन को तुरंत लिखें और डिबग करें

प्रकाशित 5 मिनट का पठन
इस लेख में

रेगुलर एक्सप्रेशन क्या है?

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

रेगेक्स \d+ (एक या अधिक अंक) जैसे सरल पैटर्न से लेकर लुकअहेड, बैकरेफ़रेंस और नामित ग्रुप वाले जटिल बहु-पंक्ति पैटर्न तक हो सकता है। शक्तिशाली होने के बावजूद, जटिल रेगेक्स को पढ़ना और अनुरक्षित करना कठिन हो सकता है — रेगेक्स टेस्टर आपको पैटर्न को अंतःक्रियात्मक रूप से बनाने और सत्यापित करने में मदद करता है।

हमारा रेगेक्स टेस्टर कैसे काम करता है

जैसे-जैसे आप टाइप करते हैं, रेगेक्स टेस्टर दृश्य हाइलाइटिंग के साथ रियल-टाइम मिलान प्रदान करता है।

  • लाइव मिलान — जैसे-जैसे आप पैटर्न टाइप करते हैं, यह आपकी परीक्षण स्ट्रिंग में सभी मिलानों को हाइलाइट करता है
  • फ़्लैग समर्थन — global, case-insensitive, multiline और dotAll फ़्लैग को टॉगल करें
  • ग्रुप कैप्चर प्रदर्शन — जटिल पैटर्न के लिए कैप्चर किए गए ग्रुप और नामित कैप्चर दिखाता है

निःशुल्क आज़माएँ — कोई साइनअप आवश्यक नहीं

किसी रेगुलर एक्सप्रेशन का परीक्षण करें →

रेगेक्स टेस्टर का उपयोग कब करें

जब भी आपको किसी पैटर्न को कोड में शामिल करने से पहले उसे विकसित या डिबग करना हो, रेगेक्स टेस्टर उपयोगी होता है।

  • फ़ॉर्म सत्यापन — ईमेल, फ़ोन, पिन कोड या कस्टम इनपुट सत्यापन के लिए पैटर्न विकसित और परीक्षण करें
  • लॉग पार्सिंग — grep या awk से प्रोसेस करने से पहले लॉग पंक्तियों से फ़ील्ड निकालने के लिए रेगेक्स बनाएं
  • डेटा निष्कर्षण — टेक्स्ट या HTML से संरचित डेटा को स्क्रैप या पार्स करने के लिए पैटर्न का परीक्षण करें

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

ग्रीडी और लेज़ी क्वांटिफ़ायर में क्या अंतर है?

ग्रीडी क्वांटिफ़ायर (*, +, ?) यथासंभव अधिक से मिलान करते हैं। लेज़ी क्वांटिफ़ायर (*?, +?, ??) यथासंभव कम से मिलान करते हैं। उदाहरण के लिए, स्ट्रिंग <a>text</a> पर पैटर्न <.*> पूरी स्ट्रिंग से मिलान करता है (ग्रीडी) जबकि <.*?> केवल <a> से मिलान करता है (लेज़ी)। HTML या नेस्टेड संरचनाओं को पार्स करने के लिए लेज़ी क्वांटिफ़ायर आवश्यक हैं।

मैं रेगेक्स में एक शाब्दिक बिंदु या अन्य विशेष वर्ण से मिलान कैसे करूं?

वर्ण को बैकस्लैश से एस्केप करें: \. एक शाब्दिक बिंदु से मिलान करता है, \* एक शाब्दिक तारांकन से मिलान करता है। जिन विशेष वर्णों को एस्केप करने की आवश्यकता है वे हैं: . * + ? ^ $ { } [ ] | ( ) \. यदि आपको इनमें से किसी से भी शाब्दिक रूप से मिलान करना हो, तो हमेशा उनसे पहले \ लगाएं।

मेरा रेगेक्स JavaScript में Python की तुलना में अलग ढंग से क्यों काम करता है?

अलग-अलग भाषाएं थोड़े भिन्न रेगेक्स स्वाद (flavors) लागू करती हैं। प्रमुख अंतरों में शामिल हैं: Python नामित ग्रुप के लिए (?P<name>) का उपयोग करता है जबकि JavaScript (?<name>) का उपयोग करता है; लुकबिहाइंड समर्थन भिन्न होता है; \K (keep) जैसी कुछ सुविधाएं PCRE में मौजूद हैं लेकिन JavaScript में नहीं। अपने लक्षित भाषा के संदर्भ में हमेशा अपने रेगेक्स का परीक्षण करें।

संबंधित टूल