VBA RegEx | VBA Excel இல் வழக்கமான வெளிப்பாட்டை எவ்வாறு பயன்படுத்துவது? (எடுத்துக்காட்டுகள்)

எக்செல் விபிஏவில் ரெஜெக்ஸ் என்றால் என்ன?

RegEx என்பது “வழக்கமான வெளிப்பாடுVBA எக்செல் இல் ”மற்றும் மதிப்புகளின் சரத்தில் ஒரு குறிப்பிட்ட வடிவ எழுத்துக்களைக் கண்டுபிடிப்பதற்கான தேடல் வடிவத்தை வரையறுக்கும் எழுத்துக்களின் வரிசை. ஒரு எளிய வார்த்தையில் “நாம் ஒரு வழக்கமான வெளிப்பாடு வடிவத்தை உருவாக்கி, அந்த வடிவத்தின் சரத்தைத் தேட அதைப் பயன்படுத்தலாம்”.

VBA RegEx ஒரு பொருள் மாதிரி. விளக்கத்தைப் பார்ப்பதன் மூலம் அது மிரட்டுவதாக எனக்குத் தெரியும், ஆனால் விஷயம் என்னவென்றால், பொருளின் தன்மை. நீங்கள் இங்கே நினைவில் கொள்ள வேண்டிய ஒரு விஷயம் VBA RegEx (வழக்கமான வெளிப்பாடு) என்பது எங்கள் மற்ற உரை செயல்பாடுகளான “LEFT, RIGHT, MID” போன்ற உரை செயல்பாடு பொருள்.

எக்செல் VBA இல் RegEx ஐ எவ்வாறு இயக்குவது?

VBA RegEx என்பது எங்கள் வெளிப்புற மென்பொருளான “MS Word” மற்றும் “MS PowerPoint” போன்ற VBA இல் ஒரு பொருள் மாதிரி என்று நான் சொன்னேன். இதேபோல், ரெஜெக்ஸ் ஒரு உபகரண பொருள் மாதிரி (COM) ஆகும், இது VBA எடிட்டரில் நாம் குறிப்பிட வேண்டும். RegEx ஐ இயக்க, பின்வரும் படிகளைப் பின்பற்றவும்.

படி 1: விஷுவல் பேசிக் எடிட்டருக்கு (Alt + F11) செல்லுங்கள்

படி 2: கருவிகள் மற்றும் குறிப்புகளுக்குச் செல்லவும்.

படி 3: இப்போது நீங்கள் VBA திட்டத்திற்கான குறிப்புகளைக் காண்பீர்கள். கீழே உருட்டி “மைக்ரோசாப்ட் விபிஸ்கிரிப்ட் ரெகுலர் எக்ஸ்பிரஷன் 5.5” ஐத் தேர்ந்தெடுக்கவும்

படி 4: இப்போது சரி என்பதைக் கிளிக் செய்க. இந்த ரெஜெக்ஸ் பொருளை இப்போது விபிஏ குறியீட்டில் அணுகலாம்.

உதாரணமாக - இப்போது நான் உங்களுக்கு ஒரு எளிய உதாரணத்தைக் காண்பிப்பேன். உங்களிடம் “விற்பனை 2019, விற்பனை 2018 மற்றும் விற்பனை 2017” என்ற சொற்கள் உள்ளன என்று வைத்துக் கொள்ளுங்கள். நீங்கள் [0 - 7] என வடிவத்தை வரையறுத்தால், அது 0 முதல் 7 வரையிலான அனைத்து எண்களுடன் பொருந்துகிறது, எனவே எங்கள் போட்டிகள் ஒவ்வொரு சரத்திலும் 201, 201 மற்றும் 2017 ஆக இருக்கும்.

VBA RegEx Pattern

VBA RegEx செயல்பாட்டின் வடிவம் மிரட்டுவதாகவும், வடிவத்தைப் புரிந்துகொள்ள சிறிது நேரம் எடுக்கும். இங்கே இரண்டு வகையான எழுத்துக்களின் வரிசையை நாம் காணலாம், ஒன்று “இலக்கிய எழுத்துக்கள்”, மற்றொன்று “மெட்டா கராக்டர்கள்”.

  • இலக்கிய எழுத்துக்கள் வழங்கப்பட்ட சரத்தின் சரியான பொருத்தத்தைத் தேடுங்கள். எடுத்துக்காட்டாக, “EFG” என்ற எழுத்துக்குறி எழுத்து வரிசை, வழங்கப்பட்ட உரையில் “EFG” இன் அனைத்து பொருத்தங்களையும் தேடுகிறது.
  • மெட்டா கராக்டர்கள் ரெஜெக்ஸ் வடிவத்தில் சரியான பொருளைக் கொண்ட எழுத்துக்களின் கலவையைத் தவிர வேறில்லை. இது முற்றிலும் வேறுபட்டது இலக்கிய எழுத்துக்கள். இது ஒரு பெரிய தலைப்பு, கீழே சில முக்கியமான தொடரியல் உள்ளன.
தொடரியல்விளக்கம்உதாரணமாகஎடுத்துக்காட்டு போட்டி
.இது உள்ளீட்டு சரத்தின் எந்த ஒற்றை எழுத்துக்கும் பொருந்துகிறதுp.t.செல்லப்பிராணி. பானை, போடு, முறை
[]இது உள்ளீட்டு சரத்தின் அடைப்புக்குறிக்கு இடையில் உள்ள எந்த ஒரு எழுத்திற்கும் பொருந்துகிறது[pt]இது p அல்லது t உடன் பொருந்துகிறது
[^]இது உள்ளீட்டு சரத்தின் அடைப்புக்குறிக்கு இடையில் அல்ல, எந்த ஒற்றை எழுத்துக்கும் பொருந்துகிறது[^ pt]இது p அல்லது t உடன் பொருந்தவில்லை
[முதல்-கடைசி]இது அடைப்புக்குறிக்குள் வழங்கப்பட்ட வரம்பிற்கு இடையில் எந்த எழுத்திற்கும் பொருந்துகிறது[0-9]இது 0 முதல் 9 வரையிலான எந்த இலக்கத்துடனும் பொருந்துகிறது
[a-z]இது ஒரு சிறிய எழுத்துக்குறி a முதல் z வரை பொருந்துகிறது
[A-Z]இது A முதல் Z வரையிலான எந்தவொரு பெரிய எழுத்துக்கும் பொருந்துகிறது
. கள்இது எந்த வெள்ளை இட எழுத்துக்கும் பொருந்துகிறதுஇடம், புதிய வரி அல்லது தாவல் எழுத்துடன் பொருந்துகிறது
\ எஸ்இது எந்தவொரு அல்லாத இடைவெளி எழுத்துக்கும் பொருந்துகிறதுபொருந்தக்கூடிய எழுத்துக்கள் இடம் அல்ல, புதிய வரி அல்ல, தாவல் எழுத்து அல்ல
. dஇது எந்த ஒற்றை இலக்க எழுத்துக்கும் பொருந்துகிறதுSE 5 VG 65 மற்றும் 6 உடன் பொருந்துகிறது
\ டிஇது எந்தவொரு ஒற்றை எண்ணற்ற தன்மைக்கும் பொருந்துகிறதுSE 5 VG 6SEVG உடன் பொருந்துகிறது

RegEx பொருளின் பண்புகள் மற்றும் முறைகள்

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

VBA Regex பொருளின் பண்புகள்

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

RegEx பொருளின் முறைகள்

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

VBA எக்செல் இல் RegEx இன் எடுத்துக்காட்டு

இப்போது கீழேயுள்ள எடுத்துக்காட்டு VBA குறியீட்டைப் பாருங்கள்.

இந்த VBA RegEx Excel வார்ப்புருவை இங்கே பதிவிறக்கம் செய்யலாம் - VBA RegEx Excel வார்ப்புரு

குறியீடு:

 துணை RegEx_Example () மங்கலான RegEx பொருளாகவும், MyString என சரம் அமைப்பாகவும் RegEx = CreateObject ("VBScript.RegExp") RegEx உடன் .Pattern = "[0-9] +" MyString உடன் முடிவு = "பிறந்த ஆண்டு 1985" MsgBox RegEx .செலுத்தல் (MyString) MyString = "பிறந்த ஆண்டு தேதி ???" MsgBox RegEx.Test (MyString) முடிவு துணை 

fregular

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

 RegEx உடன் .Pattern = "[0-9] +" உடன் முடிவு 

பின்னர் மாறி MyString = “பிறந்த ஆண்டு 1985” இது 0 முதல் 9 வரையிலான மதிப்புகளைக் கொண்டுள்ளது, எனவே எங்கள் செய்தி பெட்டி உண்மைக்குத் திரும்பும்.

MyString = “பிறந்த ஆண்டு தேதி ???” 0 முதல் 9 வரை எண்கள் இல்லை, எனவே செய்தி பெட்டிகளின் விளைவாக FALSE ஐ வழங்கும்.