Regex परीक्षक
तुमच्या ब्राउझरमध्ये रेग्युलर एक्सप्रेशन्सची झटपट चाचणी आणि डीबग करा. सामने हायलाइट करा, कॅप्चर गट पहा आणि रिप्लेस मोड वापरा — विनामूल्य आणि खाजगी.
तुमच्या ब्राउझरमध्ये रेग्युलर एक्सप्रेशन्सची झटपट चाचणी आणि डीबग करा. सामने हायलाइट करा, कॅप्चर गट पहा आणि रिप्लेस मोड वापरा — विनामूल्य आणि खाजगी.
रेग्युलर एक्सप्रेशन ही मजकूरातील नमुन्यांची जुळणी करण्यासाठी डोमेन-विशिष्ट भाषा आहे. ते 1968 पासून संगणनाचा भाग आहेत आणि आता प्रत्येक आधुनिक प्रोग्रामिंग भाषा, मजकूर संपादक आणि कमांड-लाइन शोध साधनामध्ये तयार केले गेले आहेत. वाक्यरचना संक्षिप्त आहे परंतु त्रुटी-प्रवण आहे: लहान बदल सूक्ष्मपणे भिन्न जुळणी वर्तन तयार करतात आणि जटिल अभिव्यक्ती पटकन वाचता येत नाहीत. तुम्ही पॅटर्न संपादित करता तेव्हा रिअल टाइममध्ये जुळणारे परीक्षक हे regex विकसित करण्याचा आणि सत्यापित करण्याचा सर्वात प्रभावी मार्ग आहे.
हे टेस्टर तुमच्या ब्राउझरमध्ये JavaScript regex इंजिन वापरून चालते (जे ब्राउझरमध्ये चालत असल्यास तुमचा ॲप्लिकेशन वापरतो). नमुने आणि चाचणी मजकूर प्रतिक्रियाशीलपणे अद्यतनित करा: प्रत्येक बदल एकतर सामना पुन्हा चालवतो. जुळणारे गट हायलाइट केले जातात, कॅप्चर केलेले गट सूचीबद्ध केले जातात आणि ध्वज (केस-संवेदनशील, मल्टीलाइन, ग्लोबल) चाचणीसाठी उघड केले जातात.
Regex वाक्यरचना इंजिन दरम्यान सूक्ष्मपणे बदलते. JavaScript ECMAScript स्पेक फॉलो करते; Python, PCRE (PHP आणि इतर अनेकांनी वापरलेले), Java, आणि Go या प्रत्येकाच्या स्वतःच्या बोलीभाषा आहेत ज्यात ओव्हरलॅपिंग आहे परंतु समान वैशिष्ट्ये नाहीत. येथे विकसित केलेले नमुने ECMAScript वाक्यरचना वापरतात; क्रॉस-इंजिन पोर्टेबिलिटीसाठी प्रत्येक लक्ष्याचे दस्तऐवजीकरण तपासणे आवश्यक आहे.
Regex बग उपयोजनानंतर डीबग करणे कठीण आहे. वाजवी दिसणारा नमुना हेतूपेक्षा जास्त किंवा कमी जुळू शकतो, एज केसेसमध्ये अयशस्वी होऊ शकतो किंवा विशिष्ट इनपुटवर आपत्तीजनक बॅकट्रॅकिंग असू शकतो. कोड पुनरावलोकन आणि उत्पादनापूर्वी प्रतिनिधी इनपुटच्या विरूद्ध संवादात्मकपणे चाचणी नमुने समस्या पकडतात.
दस्तऐवजीकरणाचाही फायदा होतो. इनपुटसह ते जुळले पाहिजे आणि ते जुळू नये असे इनपुटसह regex दर्शविल्याने हेतू स्पष्ट होतो. भविष्यातील देखरेख करणारे (सहा महिन्यांत स्वतःसह) दस्तऐवजीकरण केलेल्या चाचणी प्रकरणांची ते हुशार वन-लाइनर्सची प्रशंसा करतात त्यापेक्षा जास्त कौतुक करतात.
नमुना टाइप करा, चाचणी इनपुट टाइप करा, थेट हायलाइट केलेले सामने पहा.
JavaScript regex ECMAScript तपशीलाचे अनुसरण करते. प्रमुख वैशिष्ट्ये: वर्ण वर्ग ([abc], [^abc]), क्वांटिफायर्स (*, +, ?, {n,m}), अल्टरनेशन (|), गटबद्धता (...)), कॅप्चरिंग आणि नॉन-कॅप्चरिंग गट, लूकअहेड आणि लुक बिहाइंड (आधुनिक इंजिन), बॅकरेफरेन्स, नामित गट, युनिकोड प्रॉपर्टी एस्केप (युनिकोड फ्लॅग्ज आणि मानक ध्वजांसह).
PCRE आणि Python मधील महत्त्वाचे फरक: JavaScript (2018+) मध्ये लुकबिहाइंड सपोर्ट अलीकडील आहे; नामांकित गट (?<name>...) वाक्यरचना वापरतात; काही युनिकोड एस्केपसाठी यू ध्वज योग्यरित्या कार्य करणे आवश्यक आहे. प्रत्येक लक्ष्याच्या दस्तऐवजीकरणासाठी क्रॉस-भाषा वापरासाठी अभिप्रेत असलेले नमुने तपासले पाहिजेत.
कार्यप्रदर्शन: बॅकट्रॅकिंग-आधारित रेजेक्स इंजिन (बहुतेक JavaScript सह) विशिष्ट पॅथॉलॉजिकल पॅटर्नवर आपत्तीजनक बॅकट्रॅकिंग असू शकतात. टेस्टरला टांगलेल्या चाचण्या हे लक्षण आहे की पॅटर्नला सरलीकरण आवश्यक आहे — विशेषत: नेस्टेड क्वांटिफायर आणि अस्पष्ट बदल टाळून.