रेगेक्स परीक्षक और विज़ुअलाइज़र

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

Shehzad Munir द्वारा निर्मित और अनुरक्षित ·

रेगेक्स परीक्षक और विज़ुअलाइज़र
Loading Loading Regex Tester
  • डेवलपर उपकरण
  • मुक्त · कोई साइन-अप नहीं
  • आपके ब्राउज़र में चलता है
  • 14 विशेषताएं
Share

एक रेगेक्स परीक्षक जो आपको दिखाता है कि आपके पैटर्न का क्या मतलब है

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

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

विशेषताएँ

  • किसी भी पैटर्न का इंटरैक्टिव रेलरोड आरेख: रेगेक्स में इसे रोशन करने के लिए एक बॉक्स को घुमाएं
  • प्रत्येक टोकन, समूह, क्वांटिफ़ायर और लुकअराउंड की सरल-अंग्रेज़ी व्याख्या
  • टेक्स्ट के अंदर रंग-कोडित कैप्चर समूहों के साथ लाइव मैच हाइलाइटिंग
  • प्रत्येक समूह ने क्या कैप्चर किया, यह देखने के लिए सीधे चित्र पर मिलान पर क्लिक करें
  • सिंटैक्स-रंगीन पैटर्न संपादक जो आपके कर्सर का अनुसरण करता है
  • सभी जावास्क्रिप्ट झंडे: जी, आई, एम, एस, यू, वी (यूनिकोड सेट) और वाई
  • $1, $<नाम>, $& और पूर्वावलोकन से पहले/बाद में हाइलाइट किए गए से बदलें
  • टेम्प्लेट, अद्वितीय/सॉर्ट, CSV और JSON निर्यात वाली सूची से मिलान निकालें
  • रेगेक्स द्वारा पाठ को विभाजित करें, और इकाई परीक्षण जो मेल खाना चाहिए (या नहीं होना चाहिए)।
  • जावास्क्रिप्ट, टाइपस्क्रिप्ट, पायथन, पीएचपी, जावा, सी#, गो, रस्ट और रूबी के लिए कोड निर्यात
  • संगतता तालिका: देखें कि पायथन, पीसीआरई, गो या रस्ट में कौन सी सुविधाएँ टूटती हैं
  • ReDoS गार्ड: एक कार्यकर्ता में चलता है, भगोड़े पैटर्न को रोकता है और नेस्टेड क्वांटिफायर को चिह्नित करता है
  • 40 परीक्षण किए गए पैटर्न की लाइब्रेरी और उदाहरणों से उत्पन्न करने वाला एक बिल्डर
  • क्लिक करने योग्य चीटशीट, सहेजे गए पैटर्न और साझा करने योग्य लिंक, आपके ब्राउज़र में 100%

रेगेक्स परीक्षक और विज़ुअलाइज़र का उपयोग कैसे करें

  1. 1

    एक पैटर्न दर्ज करें

    एक रेगेक्स टाइप करें (/पैटर्न/फ्लैग चिपकाने से यह स्वचालित रूप से विभाजित हो जाता है), पैटर्न लाइब्रेरी से एक चुनें, या बिल्ड टैब में उदाहरणों से एक उत्पन्न करें।

  2. 2

    झंडे टॉगल करें

    मिलान व्यवहार बदलने के लिए g, i, m, s, u, v या y पर क्लिक करें; यह क्या करता है यह देखने के लिए एक ध्वज लहराएँ।

  3. 3

    दृश्य आरेख पढ़ें

    पैटर्न के प्रत्येक भाग का क्या अर्थ है यह देखने के लिए, रेलरोड आरेख में किसी भी बॉक्स पर होवर करें या क्लिक करें, या स्पष्टीकरण पर स्विच करें।

  4. 4

    अपने पाठ के विरुद्ध परीक्षण करें

    परीक्षण स्ट्रिंग में पाठ चिपकाएँ; मैच और कैप्चर ग्रुप लाइव हाइलाइट होते हैं। आरेख पर प्रत्येक समूह का मान देखने के लिए मिलान पर क्लिक करें।

  5. 5

    बदलें, निकालें या परीक्षण करें

    यह जांचने के लिए कि पैटर्न बिल्कुल वही करता है जो आपको चाहिए, रिप्लेस, एक्सट्रैक्ट, स्प्लिट और यूनिट परीक्षणों का उपयोग करें।

  6. 6

    निर्यात करें या साझा करें

    कोड टैब से अपनी भाषा के लिए कार्यशील कोड कॉपी करें, आरेख को एसवीजी/पीएनजी के रूप में डाउनलोड करें, या एक शेयर लिंक कॉपी करें।

सामान्य उपयोग के मामले

  • आपको विरासत में मिले जटिल रेगेक्स को समझें, एक समय में एक आरेख बॉक्स
  • डीबग करें कि रेगेक्स आपके डेटा से मेल क्यों नहीं खा रहा है
  • किसी ईमेल, यूआरएल, फोन या पासवर्ड पैटर्न को शिपिंग से पहले सत्यापित करें
  • नामित कैप्चर समूहों के साथ लॉग लाइनों से फ़ील्ड निकालें
  • समूह संदर्भों के साथ ढूँढें और बदलें का प्रारूप तैयार करें और उसका पूर्वावलोकन करें
  • जावास्क्रिप्ट रेगेक्स को पायथन, पीएचपी, गो या जावा में पोर्ट करें
  • विनाशकारी बैकट्रैकिंग (ReDoS) के लिए एक पैटर्न की जाँच करें
  • दृश्य व्याख्या के साथ नियमित अभिव्यक्तियाँ सिखाएँ या सीखें

विस्तृत मार्गदर्शिका

रेगेक्स रेलरोड आरेख कैसे पढ़ें

रेलरोड (सिंटैक्स) आरेख को रेल ट्रैक की तरह पढ़ा जाता है: बाईं ओर बिंदु से शुरू करें, अंत तक किसी भी मार्ग का अनुसरण करें, और जिन वर्णों से आप गुजरते हैं वे एक स्ट्रिंग बनाते हैं जिसे रेगेक्स स्वीकार करता है। शाखाओं का मतलब विकल्प है, एक ट्रैक जो नीचे की ओर घूमता है उसका मतलब है दोहराव, और एक ट्रैक जो ऊपर बॉक्स को बायपास करता है उसका मतलब है कि वह हिस्सा वैकल्पिक है। रंगीन फ़्रेम कैप्चर समूह हैं (समान रंग आपके हाइलाइट किए गए मैचों में उपयोग किए जाते हैं), धराशायी फ़्रेम लुकअराउंड होते हैं जो टेक्स्ट का उपभोग किए बिना जांच करते हैं, और गोली के आकार के बक्से एंकर होते हैं जो किसी चरित्र के बजाय स्थिति से मेल खाते हैं। परिणामों में एक मिलान पर क्लिक करें और प्रत्येक समूह फ्रेम उसके द्वारा कैप्चर किया गया सटीक मान दिखाता है, या यदि वह समूह छोड़ दिया गया था तो 'कोई मिलान नहीं' दिखाता है।

आरेख मेंरेगेक्स सिंटैक्सअर्थ
उद्धृत पाठ वाला बॉक्सएबीसी \. \एनये सटीक पात्र
बॉक्स सूची 'इनमें से एक:'[a-z0-9_]सेट से कोई एक पात्र
बॉक्स सूची 'इनमें से कोई नहीं:'[^\s@]कोई भी एकल वर्ण सेट में नहीं है
हरा बॉक्स (अंक, शब्द वर्ण...)\d \w \s .एक चरित्र वर्ग आशुलिपि
गोली के आकार का डिब्बा^ $ \bएक एंकर: एक पद, चरित्र नहीं
ट्रैक शाखाओं में बंट जाता हैबिल्ली|कुत्ताया तो वैकल्पिक
ट्रैक लूप वापस नीचे+ * {2,5}दोहराएँ (लेबल दिखाता है कि कितनी बार)
ऊपर ट्रैक बाईपास? * {0,3}भाग वैकल्पिक है
धराशायी लूप+? *?आलसी: जितना संभव हो उतनी कम बार दोहराएं
रंगीन फ़्रेम '#1 नाम'(...) (?<नाम>...)समूह कैप्चर करें, बाएँ से दाएँ क्रमांकित
धराशायी फ्रेम 'इसके बाद:'(?=…) (?!…) (?<=…)आगे देखो/पीछे देखो

रेगेक्स चीट शीट: वह सिंटैक्स जिसका आप हर दिन उपयोग करेंगे

परीक्षक के ऊपर अंतर्निहित चीटशीट खोलें और इसे अपने कर्सर पर डालने के लिए किसी भी टोकन पर क्लिक करें। ये लगभग हर पैटर्न के निर्माण खंड हैं:

टोकनमाचिसउदाहरण
\dएक अंक 0-9\d{4} 2026 से मेल खाता है
\wअक्षर, अंक या अंडरस्कोर\w+ उपयोगकर्ता_42 से मेल खाता है
\sव्हाईटस्पेस (स्पेस, टैब, न्यूलाइन)a\sb 'a b' से मेल खाता है
.पंक्ति विराम को छोड़कर कोई भी वर्णa.c, abc, a-c से मेल खाता है
[एबीसी] / [^एबीसी]सूचीबद्ध वर्णों में से एक/कोई नहीं[aeiou] एक स्वर से मेल खाता है
^ और $स्ट्रिंग का आरंभ और अंत (या m के साथ पंक्ति)^\d+$ केवल अंक है
\bएक शब्द सीमा\bcat\b 'कॉन्केनेट' को छोड़ देता है
* + ?0+, 1+, या 0-1 दोहरावरंग? रंग, रंग से मेल खाता है
{n,m}एन और एम दोहराव के बीच\d{2,4}
(…) और (?<नाम>…)समूह/नामित समूह को कैप्चर करें(?<वर्ष>\d{4})
(?:…)कैप्चरिंग के बिना समूह(?:ab)+
\1, \k<नाम>पिछले समूह जैसा ही पाठ(\w)\1 'll' से मेल खाता है
(?=…) (?!…)अनुसरण किया गया / अनुसरण नहीं किया गया\d+(?=px)
(?<=…) (?<!…)इसके पहले/पहले नहीं(?<=\$)\d+

रेगेक्स झंडे की व्याख्या की गई

झंडे पूरे पैटर्न के व्यवहार को बदल देते हैं। उन्हें एक क्लिक से टॉगल करें; यह क्या करता है यह देखने के लिए एक ध्वज लहराएँ।

झंडानामप्रभाव
gवैश्विकपहले पर रुकने के बजाय हर मैच खोजें
iमामले को नजरअंदाज करेंअक्षर अपरकेस या लोअरकेस में मेल खाते हैं
mबहु^ और $ प्रत्येक पंक्ति के प्रारंभ/अंत में मेल खाते हैं
sdotAll. लाइन ब्रेक से भी मेल खाता है
uयूनिकोडइमोजी और सूक्ष्म वर्णों को एक वर्ण मानता है; \p{…} को सक्षम बनाता है
vयूनिकोड सेटआप जो कुछ भी करते हैं, साथ ही [\p{L}--[a-z]] जैसे ऑपरेशन भी सेट करते हैं
yचिपचिपाप्रत्येक मैच ठीक वहीं शुरू होना चाहिए जहां पिछला मैच समाप्त हुआ था

एक ही स्थान पर बदलें, निकालें, विभाजित करें और इकाई-परीक्षण करें

$1, $<नाम>, $& और $$ टोकन के साथ ढूँढने और बदलने का नियम बनाने के लिए रिप्लेस पर स्विच करें; परिणाम प्रत्येक सम्मिलित टुकड़े को हाइलाइट करता है ताकि आप इसे वास्तविक डेटा पर चलाने से पहले जांच सकें। एक्स्ट्रैक्ट प्रत्येक मैच को एक टेम्पलेट का उपयोग करके एक सूची में बदल देता है (उदाहरण के लिए $2, $1 दो समूहों को स्वैप करने के लिए), अद्वितीय और सॉर्ट विकल्पों और स्प्रेडशीट के लिए CSV या JSON निर्यात के साथ। स्प्लिट वास्तव में दिखाता है कि स्ट्रिंग.स्प्लिट() कैप्चर किए गए विभाजकों सहित क्या लौटाता है। यूनिट परीक्षण आपको व्यवहार को निर्धारित करने की सुविधा देते हैं: ऐसे तार जोड़ें जो मेल खाने चाहिए, पूरी तरह से मेल खाने चाहिए, या मेल नहीं खाने चाहिए, और प्रत्येक कीस्ट्रोक पर पास/असफल गिनती अपडेट होती है, इसलिए आपके पैटर्न में एक छोटा सा बदलाव कभी भी आपके द्वारा पहले से तय किए गए मामले को चुपचाप नहीं तोड़ता है।

टेक्स्ट से प्रत्येक ईमेल पता निकालेंकिसी पाठ के दो संस्करणों की एक साथ तुलना करेंयूआरएल क्वेरी स्ट्रिंग को एनकोड या डीकोड करें

कैटास्ट्रॉफिक बैकट्रैकिंग (ReDoS) और यह परीक्षक आपकी सुरक्षा कैसे करता है

कुछ पैटर्न, जैसे (a+)+$ या (\w+\s?)*$, को उनके दोहराव के बीच तेजी से कई तरीकों से विभाजित किया जा सकता है। जब इनपुट लगभग मेल खाता है, तो इंजन हर संयोजन का प्रयास करता है और ब्राउज़र टैब को फ्रीज कर सकता है या सर्वर को डाउन कर सकता है, एक भेद्यता जिसे ReDoS (सेवा की नियमित अभिव्यक्ति अस्वीकृति) के रूप में जाना जाता है। यह परीक्षक प्रत्येक पैटर्न को एक अलग वेब वर्कर में दो-सेकंड की सीमा के साथ चलाता है: यदि इंजन अटक जाता है तो इसे रोक दिया जाता है और आपको जमे हुए पृष्ठ के बजाय एक स्पष्ट चेतावनी मिलती है। एक अंतर्निर्मित लिंटर आपके शिप करने से पहले जोखिम भरे आकार (एक दोहराया गया समूह जिसका आंतरिक भाग भी दोहराता है) को चिह्नित करता है, साथ ही अन्य सामान्य गलतियों जैसे डोमेन नाम में एक अनदेखे बिंदु, [ए-जेड] श्रेणियां और खाली विकल्प भी।

Python, PHP, Java, C#, Go, Rust और Ruby में समान रेगेक्स का उपयोग करें

परीक्षक आपके ब्राउज़र का अपना जावास्क्रिप्ट (ईसीएमएस्क्रिप्ट) रेगेक्स इंजन चलाता है, इसलिए परिणाम जावास्क्रिप्ट, टाइपस्क्रिप्ट और नोड.जेएस के लिए सटीक होते हैं। कोड टैब आपके पैटर्न को आठ अन्य भाषाओं के लिए रेडी-टू-पेस्ट कोड में बदल देता है और अलग-अलग हिस्सों को परिवर्तित करता है: नामित समूह पायथन के लिए (?P<नाम>…) बन जाते हैं, झंडे C# के लिए रेगेक्सऑप्शंस या गो और रस्ट के लिए इनलाइन (?i) बन जाते हैं, और प्रत्येक भाषा के लिए प्रतिस्थापन टोकन फिर से लिखे जाते हैं। एक अनुकूलता तालिका आपके पैटर्न द्वारा उपयोग की जाने वाली प्रत्येक सुविधा को सूचीबद्ध करती है और क्या प्रत्येक इंजन इसका समर्थन करता है:

विशेषताजावास्क्रिप्टअजगर पुनःपीसीआरई/पीएचपीजावा/.नेटजाओ / जंग
आगे देखो (?= )हाँहाँहाँहाँNo
पीछे देखो (?<= )कोई भी लम्बाईनिश्चित लंबाईस्थिर/बंधा हुआपरिबद्ध/कोई भीNo
बैक-रेफरेंस \1हाँहाँहाँहाँNo
नामित समूह(?<n>…)(?P<n>…)(?<n>…)(?<n>…)(?P<n>…) / (?<n>…)
यूनिकोड \p{L}आपके झंडे के साथनहीं (रेगेक्स मॉड्यूल)हाँहाँ/आंशिकआंशिक/हाँ
\d गैर-ASCII अंकों से मेल खाता हैNoहाँNoनहीं हांनहीं हां

JSON से टाइपस्क्रिप्ट प्रकार उत्पन्न करेंक्रॉन अभिव्यक्तियाँ बनाएँ और समझाएँ

एक परीक्षण किए गए पैटर्न से प्रारंभ करें या उदाहरणों से एक उत्पन्न करें

पैटर्न लाइब्रेरी में 40 तैयार, परीक्षण किए गए अभिव्यक्तियां हैं, प्रत्येक नमूना पाठ के साथ: ईमेल, यूआरएल, आईपीवी4 और आईपीवी6, ई.164 और यूएस फोन नंबर, मजबूत पासवर्ड, यूयूआईडी, सिमेंटिक संस्करण, यूके पोस्टकोड, आईएसओ और डीडी/एमएम/वाईवाईवाईवाई तिथियां, कीमतें, हैशटैग, @उल्लेख, मार्कडाउन लिंक, एचटीएमएल टैग, अपाचे/एनजीएनएक्स लॉग लाइनें, डुप्लिकेट शब्द और बहुत कुछ। यदि आप अपने डेटा से शुरू करना चाहते हैं, तो बिल्ड में कुछ उदाहरण पेस्ट करें: जनरेटर अक्षरों, अंकों और प्रतीकों को ^\d{4}-\d{2}-\d{2}$ जैसे पैटर्न में समूहित करता है जिसे आप परिष्कृत कर सकते हैं। बिल्ड किसी भी शाब्दिक पाठ से बच भी सकता है इसलिए जैसे वर्ण। * ? ( ) $ बिल्कुल मेल खाते हैं।

डिज़ाइन द्वारा निजी

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

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

यह परीक्षक किस रेगेक्स स्वाद का उपयोग करता है?

यह आपके ब्राउज़र के स्वयं के जावास्क्रिप्ट (ईसीएमएस्क्रिप्ट) रेगुलर एक्सप्रेशन इंजन का उपयोग करता है, वही क्रोम, फ़ायरफ़ॉक्स, सफारी और नोड.जेएस उपयोग करता है, जिसमें झंडे जी, आई, एम, एस, यू, वी और वाई शामिल हैं। परिणाम जावास्क्रिप्ट और टाइपस्क्रिप्ट के लिए सटीक हैं; कोड टैब अन्य भाषाओं के लिए पैटर्न परिवर्तित करता है।

क्या मैं कैप्चर समूहों का परीक्षण कर सकता हूँ?

हाँ। प्रत्येक मिलान अपनी स्थिति और प्रत्येक क्रमांकित और नामित समूह के मूल्य को सूचीबद्ध करता है, समूहों को आपके पाठ के अंदर रंग-हाइलाइट किया जाता है, और एक मिलान पर क्लिक करने से प्रत्येक समूह का कैप्चर किया गया मान सीधे आरेख पर दिखाई देता है।

रिप्लेस प्रीव्यू कैसे काम करता है?

क्रमांकित समूहों के लिए $1, $2, नामित समूहों के लिए $<name>, संपूर्ण मिलान के लिए $& और शाब्दिक डॉलर चिह्न के लिए $$ का उपयोग करके एक प्रतिस्थापन टाइप करें। परिणाम लाइव अपडेट होता है और प्रत्येक सम्मिलित टुकड़े को हाइलाइट करता है, बिल्कुल उसी तरह जैसे String.replace() इसे उत्पन्न करेगा।

क्या मेरा परीक्षण डेटा निजी है?

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

मैं अपने टेक्स्ट के विरुद्ध रेगुलर एक्सप्रेशन का परीक्षण कैसे करूँ?

अपना पैटर्न टाइप करें और नमूना पाठ चिपकाएँ; मैचों को लाइव हाइलाइट किया जाता है, जिसमें कैप्चर समूह दिखाए जाते हैं, ताकि आप देख सकें कि आपका रेगेक्स किससे मेल खाता है और इसे तुरंत परिष्कृत करें।

मेरा रेगेक्स किसी चीज़ से मेल क्यों नहीं खाता?

सामान्य कारण हैं गायब ध्वज (केस के लिए i, m so ^ और $ प्रति पंक्ति काम करते हैं, s so . लाइन ब्रेक को पार करता है), एक न बचा हुआ विशेष वर्ण, या किसी अन्य भाषा का वाक्यविन्यास। यह देखने के लिए आरेख पर होवर करें कि प्रत्येक भाग क्या अपेक्षा करता है, सामान्य-अंग्रेज़ी स्पष्टीकरण पढ़ें, और पैटर्न के अंतर्गत चेतावनियों की जाँच करें।

क्या मैं जावास्क्रिप्ट और अन्य स्वादों के लिए समान पैटर्न का परीक्षण कर सकता हूँ?

मिलान जावास्क्रिप्ट इंजन पर चलता है, और कोड टैब पायथन, पीएचपी, जावा, सी#, गो, रस्ट और रूबी के लिए कार्यशील कोड उत्पन्न करता है, जो नामित समूहों, झंडे और प्रतिस्थापन सिंटैक्स को परिवर्तित करता है। एक संगतता तालिका दिखाती है कि प्रत्येक इंजन में लुकबैक या बैक-रेफरेंस जैसी कौन सी सुविधाएँ समर्थित नहीं हैं।

रेगेक्स विज़ुअलाइज़र या रेलरोड आरेख क्या है?

एक रेगेक्स विज़ुअलाइज़र एक रेलरोड आरेख के रूप में एक नियमित अभिव्यक्ति खींचता है: एक ट्रैक जिसे आप बाएं से दाएं अनुसरण करते हैं जहां शाखाएं वैकल्पिक हैं, लूप दोहराव हैं और बाईपास वैकल्पिक भाग हैं। यह कच्चे सिंटैक्स की तुलना में लंबे पैटर्न को पढ़ने में कहीं अधिक आसान बनाता है। यहां आरेख इंटरैक्टिव है: इसे पैटर्न में हाइलाइट करने के लिए एक बॉक्स को घुमाएं और एक सादा-अंग्रेजी स्पष्टीकरण देखें।

क्या मैं रेगेक्स आरेख डाउनलोड कर सकता हूँ?

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

विनाशकारी बैकट्रैकिंग (ReDoS) क्या है?

ऐसा तब होता है जब (a+)+$ जैसा पैटर्न एक ही पाठ को नेस्टेड दोहरावों के बीच तेजी से कई तरीकों से विभाजित कर सकता है, इसलिए एक निकट-चूक इनपुट इंजन को सेकंड या घंटों के लिए चालू कर देता है। यह परीक्षक एक वेब वर्कर में पैटर्न चलाता है, उन्हें दो सेकंड के बाद रोक देता है, और आपके द्वारा उन्हें तैनात करने से पहले नेस्टेड क्वांटिफायर के बारे में चेतावनी देता है।

मैं जावास्क्रिप्ट रेगेक्स को पायथन में कैसे परिवर्तित करूं?

कोड टैब खोलें और पायथन चुनें। टूल (?<name>…) को (?P<name>…), \k<name> को (?P=name) के रूप में फिर से लिखता है, i, m और s फ़्लैग को re.IGNORECASE, re.MULTILINE और re.DOTALL में मैप करता है, और $1 प्रतिस्थापन को \g<1> में परिवर्तित करता है। ध्यान दें कि पायथन का अंतर्निहित पुनः मॉड्यूल \p{…} यूनिकोड गुणों का समर्थन नहीं करता है।

रेगेक्स फ़्लैग g, i, m, s, u, v और y का क्या मतलब है?

जी सभी मिलान ढूंढता है, मैं मामले को अनदेखा करता हूं, एम प्रत्येक पंक्ति पर ^ और $ काम करता है, एस देता है। मैच लाइन ब्रेक, u पूर्ण यूनिकोड और \p{…} गुणों को सक्षम करता है, v यूनिकोड सेट ऑपरेशन जोड़ता है, और y (स्टिकी) केवल उसी स्थान पर मेल खाता है जहां अंतिम मैच समाप्त हुआ था।

लालची और आलसी परिमाणकों के बीच क्या अंतर है?

लालची क्वांटिफायर (*, +, {n,m}) जितना संभव हो उतना मेल खाते हैं, फिर जरूरत पड़ने पर अक्षर वापस दे दें; आलसी वाले (*?, +?, {n,m}?) यथासंभव कम मेल खाते हैं और आवश्यकता पड़ने पर ही विस्तार करते हैं। उदाहरण के लिए <.+> टैग की एक पूरी पंक्ति से मेल खाता है, जबकि <.+?> एक समय में एक टैग से मेल खाता है। आरेख में, एक आलसी लूप धराशायी बनाया गया है।

आगे देखो और पीछे देखो कैसे काम करते हैं?

वे जांच करते हैं कि वर्तमान स्थिति को मैच में शामिल किए बिना (?=…) के बाद या (?<=…) से पहले क्या आता है; नकारात्मक रूपों (?!…) और (?<!…) के लिए आवश्यक है कि पाठ वहां न हो। उदाहरण के लिए \d+(?=px) '12px' में 12 से मेल खाता है। जावास्क्रिप्ट किसी भी लम्बाई के लुकबैक का समर्थन करता है।

क्या यह टूल मेरे लिए रेगेक्स उत्पन्न कर सकता है?

हाँ। बिल्ड टैब में कुछ उदाहरण चिपकाएँ और यह अक्षरों, अंकों और प्रतीकों को सामान्यीकृत करके एक पैटर्न सुझाता है (उदाहरण के लिए 2026-09-24 \d{4}-\d{2}-\d{2} बन जाता है)। आप लाइब्रेरी में 40 परीक्षण किए गए पैटर्न से भी शुरुआत कर सकते हैं, जैसे ईमेल, यूआरएल, आईपी पता, फोन नंबर, तारीख और पासवर्ड नियम।

मैं रेगुलर एक्सप्रेशन के लिए यूनिट परीक्षण कैसे लिखूँ?

यूनिट परीक्षण टैब खोलें और ऐसी स्ट्रिंग जोड़ें जो मेल खाना चाहिए, पूरी तरह से मेल खाना चाहिए, या मेल नहीं खाना चाहिए। प्रत्येक परीक्षण को प्रत्येक कीस्ट्रोक पर पास/असफल गणना के साथ फिर से चलाया जाता है, और आयात लाइनें आपके परीक्षण पाठ की प्रत्येक पंक्ति को एक परीक्षण केस में बदल देती हैं।

क्या मैं किसी के साथ रेगेक्स साझा कर सकता हूँ?

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

यह regex101 या regexr से किस प्रकार भिन्न है?

regex101 आपको पीसीआरई, पायथन और जावा जैसे कई इंजनों के बीच स्विच करने देता है, जो यह टूल नहीं करता है। यह परीक्षक उस जावास्क्रिप्ट इंजन पर ध्यान केंद्रित करता है जिस पर आपका कोड वास्तव में चलता है और एक इंटरैक्टिव रेलरोड आरेख, यूनिट परीक्षण, ReDoS सुरक्षा, 9 भाषाओं के लिए कोड निर्यात और एक संगतता तालिका जोड़ता है, जिसमें कोई खाता नहीं है और कुछ भी अपलोड नहीं किया गया है।

जर्नल से

All articles →