பாஷில் சரங்களை ஒப்பிடுவது எப்படி

How Compare Strings Bash



வெவ்வேறு நிரலாக்க நோக்கங்களுக்காக, நாம் இரண்டு சரங்களின் மதிப்பை ஒப்பிட வேண்டும். இரண்டு சரங்களின் சமத்துவத்தை சோதிக்க பல நிரலாக்க மொழியில் உள்ளமைக்கப்பட்ட செயல்பாடுகள் பயன்படுத்தப்படுகின்றன. பயன்படுத்துவதன் மூலம் பாஷில் இரண்டு சரங்களின் சமத்துவம் மற்றும் சமத்துவமின்மையை நீங்கள் சரிபார்க்கலாம் என்றால் அறிக்கை == சமத்துவத்தை சரிபார்க்க பயன்படுத்தப்படுகிறது மற்றும் ! = சரங்களின் சமத்துவமின்மையை சரிபார்க்க பயன்படுத்தப்படுகிறது. நீங்கள் பாஷிலும் இரண்டு சரங்களின் மதிப்புகளை ஓரளவு ஒப்பிடலாம். பாஷில் உள்ள சரம் மதிப்புகளை எப்படி ஒப்பிடலாம் என்பது இந்த டுடோரியலில் பல்வேறு உதாரணங்களைப் பயன்படுத்தி காட்டப்பட்டுள்ளது.

எடுத்துக்காட்டு -1: == ஆபரேட்டர்களைப் பயன்படுத்தி சரம் ஒப்பீடு

மற்ற நிலையான நிரலாக்க மொழியைப் போல பாஷில் இரண்டு சரம் மதிப்புகளின் சமத்துவத்தை சரிபார்க்க உள்ளமைக்கப்பட்ட ஒப்பீட்டு செயல்பாடு இல்லை. பின்வரும் ஸ்கிரிப்டில், இரண்டு சரம் மாறிகள், strval1 மற்றும் strval2 அறிவிக்கப்படுகின்றன. இந்த இரண்டு சரம் மாறிகளின் சமபங்கு முதல் பயன்படுத்தி சோதிக்கப்படுகிறது என்றால் ஸ்கிரிப்டின் அறிக்கை. மதிப்பு strval1 இரண்டாவது சமநிலையை சரிபார்க்க ஒரு சரம் மதிப்புடன் ஒப்பிடப்படுகிறது என்றால் அறிக்கை







#!/பின்/பேஷ்

strval1='உபுண்டு'
strval2='விண்டோஸ்'

#சமநிலை இரண்டு சரம் மாறிகள் சரிபார்க்கவும்

என்றால் [ $ strval1==$ strval2 ];பிறகு
வெளியே எறிந்தார் 'சரங்கள் சமம்'
வேறு
வெளியே எறிந்தார் 'சரங்கள் சமமாக இல்லை'
இரு

#ஒரு சரம் மதிப்புடன் ஒரு மாறியின் சமத்துவத்தை சரிபார்க்கவும்

என்றால் [ $ strval1=='உபுண்டு' ];பிறகு
வெளியே எறிந்தார் 'லினக்ஸ் ஆப்பரேட்டிங் சிஸ்டம்'
வேறு
வெளியே எறிந்தார் 'விண்டோஸ் இயக்க முறைமை'
இரு

வெளியீடு:



முதல் ஒப்பீடு சமமல்ல, இரண்டாவது ஒப்பீடு சமம்.







எடுத்துக்காட்டு -2: சரம் ஒப்பீடு பயன்படுத்தி! = ஆபரேட்டர்

இரண்டு சரம் மாறிகளின் சமத்துவமின்மை பின்வரும் எடுத்துக்காட்டில் சரிபார்க்கப்படுகிறது. இங்கே இரண்டு மதிப்புகள் சமமாக இல்லை. எனவே, நிபந்தனை உண்மையாக இருந்தால் மற்றும் விண்டோஸ் இயக்க முறைமை அச்சிடும்.

#!/பின்/பேஷ்

strval1='உபுண்டு'
strval2='விண்டோஸ்'

#ஒரு சரம் மதிப்புடன் ஒரு மாறியின் சமத்துவமின்மையை சரிபார்க்கவும்

என்றால் [ $ strval2 !='உபுண்டு' ];பிறகு
வெளியே எறிந்தார் 'விண்டோஸ் இயக்க முறைமை'
வேறு
வெளியே எறிந்தார் 'லினக்ஸ் ஆப்பரேட்டிங் சிஸ்டம்'
இரு

வெளியீடு:



எடுத்துக்காட்டு -3: பகுதி சரம் ஒப்பீடு

பாஷ் ஸ்கிரிப்டில் வைல்ட் கார்டு எழுத்தைப் பயன்படுத்தி பகுதி மதிப்பை ஒப்பிடலாம். பின்வரும் ஸ்கிரிப்டில், * பகுதி பொருத்தத்திற்கு வைல்ட் கார்டு கேரக்டராக பயன்படுத்தப்படுகிறது. சரம் மாறி, strval என்ற வார்த்தையைக் கொண்டுள்ளது இணையதளம். எனவே, முதல் என்றால் ஸ்கிரிப்ட்டின் உண்மை மற்றும் அச்சிடப்படும் ஓரளவு பொருத்தம் . பாஷ் வழக்கு உணர்திறன் கொண்டது. இதற்கு, இரண்டாவது என்றால் கடித வாரியான ஒப்பீட்டின் மூலம் சமமாக இல்லாத இணையத்தை பகுதி சரமாகப் பயன்படுத்துவதால் ஸ்கிரிப்ட் தவறானது.

#!/பின்/பேஷ்

strval='மைக்ரோசாப்ட் இன்டர்நெட் எக்ஸ்ப்ளோரர்'

என்றால் [[ $ strval==*இணையதளம்* ]];
பிறகு
வெளியே எறிந்தார் 'ஓரளவு பொருத்தம்'
வேறு
வெளியே எறிந்தார் 'பொருத்தம் இல்லை'
இரு

என்றால் [[ $ strval==*இணையதளம்* ]];
பிறகு
வெளியே எறிந்தார் 'ஓரளவு பொருத்தம்'
வேறு
வெளியே எறிந்தார் 'பொருத்தம் இல்லை'
இரு

வெளியீடு:

எடுத்துக்காட்டு -4: சரத்தை பயனர் உள்ளீட்டு மதிப்புடன் ஒப்பிடுங்கள்

சில நேரங்களில், நிரலாக்க நோக்கத்திற்காக குறிப்பிட்ட சரம் மதிப்புடன் பயனர் எடுத்த சரம் மதிப்பை நாம் ஒப்பிட வேண்டும். பின்வரும் எடுத்துக்காட்டில், ஒரு சரம் தரவு பயனரிடமிருந்து உள்ளீடாக எடுக்கப்படும் மற்றும் தரவின் சமத்துவமின்மையை ஒரு நிலையான மதிப்புடன் ஒப்பிடும். நிபந்தனை உண்மையாக இருந்தால் அது அச்சிடப்படும் எந்த பதிவும் கிடைக்கவில்லை இல்லையெனில், அது அச்சிடப்படும் பதிவு கிடைத்தது .

#!/பின்/பேஷ்

வெளியே எறிந்தார் 'உங்கள் பெயரை உள்ளிடவும்'
படிஉள்ளீடு

என்றால் [ $ உள்ளீடு !='ஃபஹ்மிடா' ];
பிறகு
வெளியே எறிந்தார் 'சாதனை இல்லை'
வேறு
வெளியே எறிந்தார் 'பதிவு கிடைத்தது'
இரு

வெளியீடு:

இந்த பாடத்தின் வீடியோ இங்கே:

மேலே உள்ள எடுத்துக்காட்டுகளை தெளிவான புரிதலுடன் முடித்த பிறகு பாஷில் சரம் ஒப்பீடு பணி உங்களுக்கு எளிதாக இருக்கும்.