ரெஜெக்ஸ் சோதனையாளர்
உங்கள் உலாவியில் வழக்கமான வெளிப்பாடுகளை உடனடியாகச் சோதித்து பிழைத்திருத்தம் செய்யவும். போட்டிகளை முன்னிலைப்படுத்தவும், பிடிப்பு குழுக்களைப் பார்க்கவும் மற்றும் மாற்று பயன்முறையைப் பயன்படுத்தவும் - இலவசம் மற்றும் தனிப்பட்டது.
உங்கள் உலாவியில் வழக்கமான வெளிப்பாடுகளை உடனடியாகச் சோதித்து பிழைத்திருத்தம் செய்யவும். போட்டிகளை முன்னிலைப்படுத்தவும், பிடிப்பு குழுக்களைப் பார்க்கவும் மற்றும் மாற்று பயன்முறையைப் பயன்படுத்தவும் - இலவசம் மற்றும் தனிப்பட்டது.
வழக்கமான வெளிப்பாடுகள் என்பது உரையில் உள்ள வடிவங்களைப் பொருத்துவதற்கான டொமைன் சார்ந்த மொழியாகும். அவை 1968 ஆம் ஆண்டு முதல் கம்ப்யூட்டிங்கின் ஒரு பகுதியாக இருந்து, இப்போது ஒவ்வொரு நவீன நிரலாக்க மொழி, உரை திருத்தி மற்றும் கட்டளை வரி தேடல் கருவியிலும் கட்டமைக்கப்பட்டுள்ளன. தொடரியல் சுருக்கமானது, ஆனால் பிழை-ஏற்படும்: சிறிய மாற்றங்கள் நுட்பமாக வேறுபட்ட பொருந்தக்கூடிய நடத்தையை உருவாக்குகின்றன, மேலும் சிக்கலான வெளிப்பாடுகள் விரைவாக படிக்க முடியாததாகிவிடும். பேட்டர்னைத் திருத்தும்போது, நிகழ்நேரத்தில் பொருத்தங்களைக் காட்டும் சோதனையாளர், ரெஜெக்ஸை உருவாக்க மற்றும் சரிபார்க்க மிகவும் பயனுள்ள வழியாகும்.
இந்த சோதனையாளர் ஜாவாஸ்கிரிப்ட் ரீஜெக்ஸ் இன்ஜினைப் பயன்படுத்தி உங்கள் உலாவியில் இயங்குகிறது (உங்கள் பயன்பாடு உலாவியில் இயங்கினால் அதைப் பயன்படுத்தும்). வடிவங்கள் மற்றும் சோதனை உரை புதுப்பித்தல் எதிர்வினையாக: ஒவ்வொரு மாற்றமும் போட்டியை மீண்டும் இயக்கும். போட்டிக் குழுக்கள் முன்னிலைப்படுத்தப்படுகின்றன, கைப்பற்றப்பட்ட குழுக்கள் பட்டியலிடப்பட்டுள்ளன, மேலும் கொடிகள் (கேஸ்-சென்சிட்டிவ், மல்டிலைன், குளோபல்) சோதனைக்காக வெளிப்படுத்தப்படுகின்றன.
ரெஜெக்ஸ் தொடரியல் இயந்திரங்களுக்கு இடையில் நுட்பமாக மாறுபடும். ஜாவாஸ்கிரிப்ட் ECMAScript விவரக்குறிப்பைப் பின்பற்றுகிறது; Python, PCRE (PHP மற்றும் பலரால் பயன்படுத்தப்படுகிறது), ஜாவா மற்றும் Go ஒவ்வொன்றும் அவற்றின் சொந்த பேச்சுவழக்குகளை ஒன்றுடன் ஒன்று ஆனால் ஒரே மாதிரியான அம்சங்களைக் கொண்டிருக்கவில்லை. இங்கு உருவாக்கப்பட்ட வடிவங்கள் ECMAScript தொடரியல் பயன்படுத்துகின்றன; குறுக்கு-இயந்திரம் பெயர்வுத்திறனுக்கு ஒவ்வொரு இலக்கின் ஆவணங்களையும் சரிபார்க்க வேண்டும்.
Regex பிழைகள் வரிசைப்படுத்தப்பட்ட பிறகு பிழைத்திருத்தம் செய்வது மிகவும் கடினம். நியாயமானதாக தோற்றமளிக்கும் ஒரு வடிவமானது, உத்தேசித்ததை விட அதிகமாகவோ அல்லது குறைவாகவோ பொருந்தலாம், விளிம்பு நிலைகளில் தோல்வியடையும் அல்லது சில உள்ளீடுகளில் பேரழிவு தரும் பின்னடைவைக் கொண்டிருக்கலாம். பிரதிநிதி உள்ளீட்டிற்கு எதிராக ஊடாடும் வடிவங்களைச் சோதிப்பது குறியீடு மதிப்பாய்வு மற்றும் உற்பத்திக்கு முன் சிக்கல்களைப் பிடிக்கிறது.
வடிவங்களும் ஆவணப்படுத்தலில் இருந்து பயனடைகின்றன. அது பொருந்த வேண்டிய உள்ளீடு மற்றும் பொருந்தாத உள்ளீடு ஆகியவற்றுடன் ரீஜெக்ஸைக் காண்பிப்பது நோக்கத்தை வெளிப்படுத்துகிறது. எதிர்கால பராமரிப்பாளர்கள் (ஆறு மாதங்களில் உங்களையும் சேர்த்து) புத்திசாலித்தனமான ஒன்-லைனர்களைப் பாராட்டுவதை விட ஆவணப்படுத்தப்பட்ட சோதனை நிகழ்வுகளை அதிகம் பாராட்டுகிறார்கள்.
பேட்டர்னை உள்ளிடவும், சோதனை உள்ளீட்டை உள்ளிடவும், நேரலையில் ஹைலைட் செய்யப்பட்ட போட்டிகளைப் பார்க்கவும்.
JavaScript regex ECMAScript விவரக்குறிப்பைப் பின்பற்றுகிறது. முக்கிய அம்சங்கள்: எழுத்து வகுப்புகள் ([abc], [^abc]), குவாண்டிஃபையர்ஸ் (*, +, ?, {n,m}), மாற்று (|), குழுவாக்கம் ((...)), பிடிப்பு மற்றும் பிடிக்காத குழுக்கள், லுக்ஹெட் மற்றும் லுக்பீஹைண்ட் (நவீன இயந்திரங்கள்), பின்குறிப்புகள், பெயரிடப்பட்ட குழுக்கள், யூனிகோட் செட் எஸ்கேப்ஸ் வரிசைகள், எஸ்கேப்களின் நிலையான.
PCRE மற்றும் Python இலிருந்து முக்கிய வேறுபாடுகள்: ஜாவாஸ்கிரிப்டில் (2018+) லுக்பீஹைண்ட் ஆதரவு சமீபத்தியது; பெயரிடப்பட்ட குழுக்கள் (?<பெயர்>...) தொடரியல்; சில யூனிகோட் எஸ்கேப்களுக்கு u கொடி சரியாக வேலை செய்ய வேண்டும். குறுக்கு மொழி பயன்பாட்டிற்காக வடிவமைக்கப்பட்ட வடிவங்கள் ஒவ்வொரு இலக்கின் ஆவணங்களுக்கும் எதிராக சரிபார்க்கப்பட வேண்டும்.
செயல்திறன்: பேக்டிராக்கிங்-அடிப்படையிலான ரீஜெக்ஸ் என்ஜின்கள் (பெரும்பாலான ஜாவாஸ்கிரிப்ட் உட்பட) சில நோயியல் வடிவங்களில் பேரழிவு தரும் பின்னடைவைக் கொண்டிருக்கலாம். சோதனையாளரைத் தொங்கவிடுகின்ற சோதனைகள், வடிவத்திற்கு எளிமைப்படுத்தல் தேவை என்பதற்கான அறிகுறியாகும் - பொதுவாக உள்ளமைக்கப்பட்ட அளவீடுகள் மற்றும் தெளிவற்ற மாற்றங்களைத் தவிர்ப்பதன் மூலம்.