విషయ సూచిక
Excel ఫార్ములాల్లో రెగ్యులర్ ఎక్స్ప్రెషన్లకు ఎందుకు మద్దతివ్వలేదో ఎప్పటికీ అర్థం కాలేదా? ఇప్పుడు, అవి :) మా కస్టమ్ ఫంక్షన్లతో, మీరు నిర్దిష్ట నమూనాకు సరిపోలే స్ట్రింగ్లను సులభంగా కనుగొనవచ్చు, భర్తీ చేయవచ్చు, సంగ్రహించవచ్చు మరియు తీసివేయవచ్చు.
మొదటి చూపులో, Excel మీకు టెక్స్ట్ స్ట్రింగ్ కోసం అవసరమైన ప్రతిదాన్ని కలిగి ఉంది. అవకతవకలు. అయ్యో... సాధారణ వ్యక్తీకరణల సంగతేంటి? అయ్యో, Excelలో అంతర్నిర్మిత Regex ఫంక్షన్లు ఏవీ లేవు. కానీ మన స్వంత వాటిని మనం సృష్టించుకోలేమని ఎవరూ అనరు :)
సాధారణ వ్యక్తీకరణ అంటే ఏమిటి?
ఒక సాధారణ వ్యక్తీకరణ (aka regex లేదా regexp ) అనేది శోధన నమూనాను నిర్వచించే అక్షరాల యొక్క ప్రత్యేకంగా ఎన్కోడ్ చేయబడిన క్రమం. ఆ నమూనాను ఉపయోగించి, మీరు స్ట్రింగ్లో సరిపోలే అక్షర కలయికను కనుగొనవచ్చు లేదా డేటా ఇన్పుట్ని ధృవీకరించవచ్చు. మీకు వైల్డ్కార్డ్ సంజ్ఞామానం గురించి తెలిసి ఉంటే, మీరు రీజెక్స్లను వైల్డ్కార్డ్ల యొక్క అధునాతన సంస్కరణగా భావించవచ్చు.
రెగ్యులర్ ఎక్స్ప్రెషన్లు ప్రత్యేక అక్షరాలు, ఆపరేటర్లు మరియు నిర్మాణాలతో కూడిన వాటి స్వంత సింటాక్స్ను కలిగి ఉంటాయి. ఉదాహరణకు, [0-5] 0 నుండి 5 వరకు ఏదైనా ఒక అంకెతో సరిపోలుతుంది.
జావాస్క్రిప్ట్ మరియు VBAతో సహా అనేక ప్రోగ్రామింగ్ భాషలలో సాధారణ వ్యక్తీకరణలు ఉపయోగించబడతాయి. రెండోది ఒక ప్రత్యేక RegExp ఆబ్జెక్ట్ని కలిగి ఉంది, దానిని మేము మా అనుకూల ఫంక్షన్లను రూపొందించడానికి ఉపయోగిస్తాము.
Excel regexకి మద్దతు ఇస్తుందా?
దురదృష్టవశాత్తూ, Excelలో అంతర్నిర్మిత Regex ఫంక్షన్లు లేవు. మీ ఫార్ములాల్లో సాధారణ వ్యక్తీకరణలను ఉపయోగించడానికి, మీరు మీ స్వంత వినియోగదారు నిర్వచించిన ఫంక్షన్ను (VBA) సృష్టించాలి.వాదనలు:
=IF(RegExpMatch(A5, $A$2), "Yes", "No")
మరిన్ని ఫార్ములా ఉదాహరణల కోసం, దయచేసి చూడండి:
- సాధారణ వ్యక్తీకరణలను ఉపయోగించి స్ట్రింగ్లను ఎలా సరిపోల్చాలి
- regexesతో Excel డేటా ధ్రువీకరణ
Excel Regex Extract ఫంక్షన్
RegExpExtract ఫంక్షన్ సాధారణ వ్యక్తీకరణకు సరిపోయే సబ్స్ట్రింగ్ల కోసం శోధిస్తుంది మరియు అన్ని సరిపోలికలను సంగ్రహిస్తుంది లేదా నిర్దిష్ట సరిపోలిక.
RegExpExtract(text, pattern, [instance_num], [match_case])ఎక్కడ:
- Text (అవసరం) - శోధించడానికి టెక్స్ట్ స్ట్రింగ్ in.
- నమూనా (అవసరం) - సరిపోలడానికి రెగ్యులర్ ఎక్స్ప్రెషన్.
- Instance_num (ఐచ్ఛికం) - ఏ సందర్భాన్ని సూచించాలో సూచించే క్రమ సంఖ్య సారం. విస్మరించబడితే, కనుగొనబడిన అన్ని సరిపోలికలను (డిఫాల్ట్) అందిస్తుంది.
- Match_case (ఐచ్ఛికం) - సరిపోలడం (TRUE లేదా విస్మరించబడింది) లేదా (FALSE) టెక్స్ట్ కేస్ను విస్మరించాలా అని నిర్వచిస్తుంది.
మీరు ఇక్కడ ఫంక్షన్ కోడ్ని పొందవచ్చు.
ఉదాహరణ: సాధారణ వ్యక్తీకరణలను ఉపయోగించి స్ట్రింగ్లను ఎలా సంగ్రహించాలి
మన ఉదాహరణను కొంచెం ముందుకు తీసుకుని, ఇన్వాయిస్ నంబర్లను సంగ్రహిద్దాం. దీని కోసం, మేము ఏదైనా 7-అంకెల సంఖ్యకు సరిపోలే చాలా సులభమైన రీజెక్స్ని ఉపయోగిస్తాము:
నమూనా : \b\d{7}\b
పుట్ A2లోని నమూనా మరియు మీరు ఈ కాంపాక్ట్ మరియు సొగసైన ఫార్ములాతో పనిని పూర్తి చేస్తారు:
=RegExpExtract(A5, $A$2)
ఒక నమూనా సరిపోలితే, సరిపోలిక కనుగొనబడకపోతే, ఫార్ములా ఇన్వాయిస్ నంబర్ను సంగ్రహిస్తుంది - ఏదీ తిరిగి ఇవ్వబడలేదు.
మరిన్ని ఉదాహరణల కోసం, దయచేసి చూడండి: Excelలో స్ట్రింగ్లను ఎలా సంగ్రహించాలిregexని ఉపయోగిస్తోంది.
Excel Regex రీప్లేస్ ఫంక్షన్
RegExpReplace ఫంక్షన్ మీరు పేర్కొన్న టెక్స్ట్తో రీజెక్స్ సరిపోలే విలువలను భర్తీ చేస్తుంది.
RegExpReplace(టెక్స్ట్, ప్యాటర్న్, రీప్లేస్మెంట్ , [instance_num], [match_case])ఎక్కడ:
- వచనం (అవసరం) - శోధించడానికి టెక్స్ట్ స్ట్రింగ్.
- సరళి (అవసరం) - సరిపోలడానికి సాధారణ వ్యక్తీకరణ.
- భర్తీ (అవసరం) - సరిపోలే సబ్స్ట్రింగ్లను భర్తీ చేయడానికి వచనం.
- Instance_num (ఐచ్ఛికం) - భర్తీ చేయడానికి ఉదాహరణ. డిఫాల్ట్ "అన్ని మ్యాచ్లు".
- Match_case (ఐచ్ఛికం) - సరిపోలడం (ఒప్పు లేదా విస్మరించబడింది) లేదా (FALSE) టెక్స్ట్ కేస్ను విస్మరించాలా అని నియంత్రిస్తుంది.
ఫంక్షన్ కోడ్ ఇక్కడ అందుబాటులో ఉంది.
ఉదాహరణ: రీజెక్స్లను ఉపయోగించి స్ట్రింగ్లను ఎలా భర్తీ చేయాలి లేదా తీసివేయాలి
మా రికార్డ్లలో కొన్ని క్రెడిట్ కార్డ్ నంబర్లను కలిగి ఉంటాయి. ఈ సమాచారం గోప్యమైనది మరియు మీరు దీన్ని ఏదైనా దానితో భర్తీ చేయాలనుకోవచ్చు లేదా పూర్తిగా తొలగించవచ్చు. రెండు పనులు RegExpReplace ఫంక్షన్ సహాయంతో సాధించబడతాయి. ఎలా? రెండవ దృష్టాంతంలో, మేము ఖాళీ స్ట్రింగ్తో భర్తీ చేస్తాము.
మా నమూనా పట్టికలో, అన్ని కార్డ్ నంబర్లు 16 అంకెలను కలిగి ఉంటాయి, అవి ఖాళీలతో వేరు చేయబడిన 4 సమూహాలలో వ్రాయబడ్డాయి. వాటిని కనుగొనడానికి, మేము ఈ సాధారణ వ్యక్తీకరణను ఉపయోగించి నమూనాను పునరావృతం చేస్తాము:
నమూనా : \b\d{4} \d{4} \d{4} \d{4}\ b
భర్తీ కోసం, క్రింది స్ట్రింగ్ ఉపయోగించబడుతుంది:
భర్తీ : XXXX XXXX XXXXXXXX
మరియు అస్పష్టమైన సమాచారంతో క్రెడిట్ కార్డ్ నంబర్లను భర్తీ చేయడానికి పూర్తి ఫార్ములా ఇక్కడ ఉంది:
=RegExpReplace(A5, "\b\d{4} \d{4} \d{4} \d{4}\b", "XXXX XXXX XXXX XXXX")
రెజెక్స్ మరియు రీప్లేస్మెంట్ టెక్స్ట్తో ప్రత్యేక సెల్లు ( A2 మరియు B2), ఫార్ములా సమానంగా పని చేస్తుంది:
Excelలో, "తీసివేయడం" అనేది "భర్తీ"కి ఒక ప్రత్యేక సందర్భం. క్రెడిట్ కార్డ్ నంబర్లను తీసివేయడానికి , భర్తీ ఆర్గ్యుమెంట్ కోసం ఖాళీ స్ట్రింగ్ ("")ని ఉపయోగించండి:
=RegExpReplace(A5, "\b\d{4} \d{4} \d{4} \d{4}\b", "")
చిట్కా. ఫలితాలలో ఖాళీ లైన్ల రిగ్ను పొందడానికి, మీరు ఈ ఉదాహరణలో చూపిన విధంగా మరొక RegExpReplace ఫంక్షన్ని ఉపయోగించవచ్చు: regexని ఉపయోగించి ఖాళీ లైన్లను ఎలా తొలగించాలి.
మరింత సమాచారం కోసం, దయచేసి చూడండి:
- Regexని ఉపయోగించి Excelలో స్ట్రింగ్లను ఎలా రీప్లేస్ చేయాలి
- regexని ఉపయోగించి స్ట్రింగ్లను ఎలా తీసివేయాలి
- regexesని ఉపయోగించి వైట్స్పేస్ను ఎలా తీసివేయాలి
Regex Tools to match, extract , సబ్స్ట్రింగ్లను భర్తీ చేయండి మరియు తీసివేయండి
మా అల్టిమేట్ సూట్ యొక్క వినియోగదారులు వారి వర్క్బుక్లలో ఒకే లైన్ కోడ్ను చొప్పించకుండానే సాధారణ వ్యక్తీకరణల యొక్క మొత్తం శక్తిని పొందవచ్చు. అవసరమైన అన్ని కోడ్లు మా డెవలపర్లచే వ్రాయబడ్డాయి మరియు ఇన్స్టాలేషన్ సమయంలో మీ Excelలో స్మూతీ ఇంటిగ్రేట్ చేయబడింది.
పైన చర్చించిన VBA ఫంక్షన్ల వలె కాకుండా, అల్టిమేట్ సూట్ యొక్క విధులు .NET ఆధారితవి, ఇది రెండు ప్రధాన ప్రయోజనాలను ఇస్తుంది:
- మీరు సాధారణ .xlsx వర్క్బుక్లలో ఎటువంటి VBA కోడ్ను జోడించకుండానే సాధారణ వ్యక్తీకరణలను ఉపయోగించవచ్చు మరియు వాటిని స్థూల-ప్రారంభించబడిన ఫైల్లుగా సేవ్ చేయవచ్చు.
- .NET Regex ఇంజిన్ పూర్తి ఫీచర్ చేసిన క్లాసిక్కి మద్దతు ఇస్తుంది.రెగ్యులర్ ఎక్స్ప్రెషన్లు, ఇది మరింత అధునాతన నమూనాలను రూపొందించడానికి మిమ్మల్ని అనుమతిస్తుంది.
Excelలో Regexని ఎలా ఉపయోగించాలి
అల్టిమేట్ సూట్ ఇన్స్టాల్ చేయబడినప్పుడు, Excelలో సాధారణ వ్యక్తీకరణలను ఉపయోగించడం ఈ రెండు దశల వలె సులభం. :
- Ablebits డేటా ట్యాబ్లో, Text సమూహంలో, Regex Tools ని క్లిక్ చేయండి.
- Regex Tools పేన్లో, కింది వాటిని చేయండి:
- సోర్స్ డేటాను ఎంచుకోండి.
- మీ regex నమూనాను నమోదు చేయండి.
- కావలసిన ఎంపికను ఎంచుకోండి: మ్యాచ్ , సంగ్రహించు , తీసివేయి లేదా భర్తీ .
- ఫలితాన్ని ఇలా పొందడానికి ఫార్ములా మరియు విలువ కాదు, ఫార్ములాగా చొప్పించు చెక్ బాక్స్ను ఎంచుకోండి.
- చర్య బటన్ను నొక్కండి.
ఉదాహరణకు, సెల్ల నుండి క్రెడిట్ కార్డ్ నంబర్లను తీసివేయడానికి A2:A6, మేము ఈ సెట్టింగ్లను కాన్ఫిగర్ చేస్తాము:
ట్రైస్లో, AblebitsRegex ఫంక్షన్ మీ అసలు కుడివైపున ఉన్న కొత్త నిలువు వరుసలో చొప్పించబడుతుంది సమాచారం. మా విషయంలో, ఫార్ములా:
=AblebitsRegexRemove(A2, "\b\d{4} \d{4} \d{4} \d{4}\b")
ఒకసారి ఫార్ములా ఉంటే, మీరు దీన్ని ఏదైనా స్థానిక సూత్రం వలె సవరించవచ్చు, కాపీ చేయవచ్చు లేదా తరలించవచ్చు.
3>
రెజెక్స్ ఫార్ములాను నేరుగా సెల్లో ఎలా చొప్పించాలి
AblebitsRegex ఫంక్షన్లు కూడా యాడ్-ఇన్ ఇంటర్ఫేస్ని ఉపయోగించకుండా సెల్లో నేరుగా చొప్పించబడతాయి. ఇక్కడ ఎలా ఉంది:
- ఫార్ములా బార్లోని fx బటన్ను క్లిక్ చేయండి లేదా ఫార్ములా ట్యాబ్లో ఫంక్షన్ని చొప్పించండి .
- Insert Function డైలాగ్ బాక్స్లో, AblebitsUDFs ఎంచుకోండివర్గం, ఆసక్తి యొక్క విధిని ఎంచుకుని, సరి క్లిక్ చేయండి.
- మీరు సాధారణంగా చేసే విధంగా ఫంక్షన్ యొక్క ఆర్గ్యుమెంట్లను నిర్వచించండి మరియు సరే క్లిక్ చేయండి. పూర్తయింది!
మరింత సమాచారం కోసం, దయచేసి Excel కోసం Regex సాధనాలను చూడండి.
Excel సెల్లలోని వచనాన్ని సరిపోల్చడానికి, సంగ్రహించడానికి, భర్తీ చేయడానికి మరియు తీసివేయడానికి సాధారణ వ్యక్తీకరణలను ఎలా ఉపయోగించాలి. నేను చదివినందుకు ధన్యవాదాలు మరియు వచ్చే వారం మిమ్మల్ని మా బ్లాగ్లో చూడాలని ఎదురుచూస్తున్నాను!
అందుబాటులో ఉన్న డౌన్లోడ్లు
Excel Regex - ఫార్ములా ఉదాహరణలు (.xlsm ఫైల్)
అల్టిమేట్ సూట్ - ట్రయల్ వెర్షన్ (.exe ఫైల్)
లేదా .NET ఆధారితం) లేదా రీజెక్స్లకు మద్దతు ఇచ్చే థర్డ్-పార్టీ టూల్స్ను ఇన్స్టాల్ చేయండి.Excel Regex చీట్ షీట్
రీజెక్స్ నమూనా చాలా సరళమైనది లేదా అత్యంత అధునాతనమైనది అయినా, ఇది సాధారణ వాక్యనిర్మాణాన్ని ఉపయోగించి నిర్మించబడింది. ఈ ట్యుటోరియల్ మీకు రెగ్యులర్ ఎక్స్ప్రెషన్స్ నేర్పడం లక్ష్యం కాదు. దీని కోసం, ఆన్లైన్లో పుష్కలంగా వనరులు ఉన్నాయి, ప్రారంభకులకు ఉచిత ట్యుటోరియల్ల నుండి అధునాతన వినియోగదారుల కోసం ప్రీమియం కోర్సుల వరకు.
క్రింద మేము ప్రాథమిక విషయాలపై అవగాహన పొందడానికి మీకు సహాయపడే ప్రధాన RegEx నమూనాలను శీఘ్ర సూచనగా అందిస్తాము. తదుపరి ఉదాహరణలను అధ్యయనం చేస్తున్నప్పుడు ఇది మీ చీట్ షీట్గా కూడా పని చేయవచ్చు.
మీరు సాధారణ వ్యక్తీకరణలతో సౌకర్యవంతంగా ఉంటే, మీరు నేరుగా RegExp ఫంక్షన్లకు వెళ్లవచ్చు.
అక్షరాలు
ఇవి నిర్దిష్ట అక్షరాలను సరిపోల్చడానికి చాలా తరచుగా ఉపయోగించే నమూనాలు>
5 పిల్లులు
10 కుక్కలతో సరిపోలుతుంది
\w+\.
Mr. , Mrs. , Prof.
అక్షర తరగతులు
ఈ నమూనాలను ఉపయోగించి, మీరు వివిధ అక్షరాల సెట్ల మూలకాలను సరిపోల్చవచ్చు.
నమూనా | వివరణ | ఉదాహరణ | మ్యాచ్లు |
[అక్షరాలు] | బ్రాకెట్లోని ఏదైనా ఒక్క అక్షరానికి సరిపోలుతుంది | d[oi]g | కుక్క మరియు డిగ్ |
[^అక్షరాలు] | బ్రాకెట్లలో లేని ఏ ఒక్క అక్షరానికి సరిపోలుతుంది | d[^oi]g | మ్యాచ్లు dag, dug , d1g సరిపోలలేదు కుక్క మరియు డిగ్ |
[నుండి–వరకు] | మధ్య పరిధిలోని ఏదైనా అక్షరంతో సరిపోలుతుందిబ్రాకెట్లు | [0-9] [a-z] [A-Z] | 0 నుండి 9 వరకు ఏదైనా ఒకే అంకె ఏదైనా చిన్న చిన్న అక్షరం ఏదైనా ఒక్క పెద్ద అక్షరం |
క్వాంటిఫైయర్లు
క్వాంటిఫైయర్లు సరిపోలే అక్షరాల సంఖ్యను పేర్కొనే ప్రత్యేక వ్యక్తీకరణలు. క్వాంటిఫైయర్ ఎల్లప్పుడూ దాని ముందు ఉన్న అక్షరానికి వర్తిస్తుంది.
నమూనా | వివరణ | ఉదాహరణ | సరిపోలికలు | |
* | సున్నా లేదా అంతకంటే ఎక్కువ సంఘటనలు | 1a* | 1, 1a , 1aa, 1aaa , మొదలైనవి | |
+ | ఒకటి లేదా అంతకంటే ఎక్కువ సంఘటనలు | po+ | కుండలో , po పేద లో, poo | |
? | సున్నా లేదా ఒక సంఘటన | రో లేదా మరిన్ని సంఘటనలు, కానీ వీలైనంత తక్కువ | 1a*? | 1a , 1aa మరియు 1aaa , మ్యాచ్లలో 1a |
+? | ఒకటి లేదా అంతకంటే ఎక్కువ సంఘటనలు, కానీ వీలైనంత తక్కువ | po+? | పాట్ మరియు పూర్ లో, po | |
?? | సున్నా లేదా ఒక సంఘటన సరిపోలుతుంది , కానీ వీలైనంత తక్కువ | roa?? | రోడ్ మరియు రాడ్ , ro | <సరిపోలుతుంది 16>|
{n} | మునుపటి నమూనా n సార్లు సరిపోలుతుంది | \d{3} | ఖచ్చితంగా 3 అంకెలు | |
{n ,} | మునుపటి నమూనా n లేదా అంతకంటే ఎక్కువ సార్లు సరిపోలుతుంది | \d{3,} | 3 లేదా అంతకంటే ఎక్కువ అంకెలు | |
{n,m} | తో సరిపోలుతుందిn మరియు m సమయాల మధ్య మునుపటి నమూనా | \d{3,5} | 3 నుండి 5 అంకెల వరకు |
గ్రూపింగ్
సోర్స్ స్ట్రింగ్ నుండి సబ్స్ట్రింగ్ను క్యాప్చర్ చేయడానికి సమూహ నిర్మాణాలు ఉపయోగించబడతాయి, కాబట్టి మీరు దానితో కొంత ఆపరేషన్ చేయవచ్చు.
సింటాక్స్ | వివరణ | ఉదాహరణ | మ్యాచ్లు |
(నమూనా) | సమూహాన్ని సంగ్రహించడం: సరిపోలే సబ్స్ట్రింగ్ను క్యాప్చర్ చేస్తుంది మరియు దానికి ఆర్డినల్ నంబర్ని కేటాయిస్తుంది | (\d+) | 5 పిల్లులు మరియు 10 కుక్కలలో , 5 (సమూహం 1) మరియు 10 (సమూహం 2) |
(?:నమూనా) | కాప్చర్ చేయని సమూహం: సమూహంతో సరిపోలుతుంది కానీ దానిని సంగ్రహించదు | (\d+)(?: కుక్కలు) | 5 పిల్లులు మరియు 10 కుక్కలలో , 10 |
\1 | సమూహం యొక్క కంటెంట్లను సంగ్రహిస్తుంది 1 | (\d+)\+(\d+)=\2\+\1 | 5+10=10+5 మ్యాచ్లు మరియు 5ని సంగ్రహిస్తుంది మరియు 10 , ఇవి గుంపులను సంగ్రహించడంలో ఉన్నాయి |
\2 | సమూహం 2లోని విషయాలు |
యాంకర్లు
యాంకర్లు ఇన్పుట్ స్ట్రింగ్లో ఎక్కడ వెతకాలి అనే స్థానాన్ని పేర్కొంటారు మ్యాచ్ 14>^
గమనిక: [^బ్రాకెట్ల లోపల] అంటే "కాదు"
5 పిల్లులు మరియు 10 కుక్కలలో , 5
10లోY
తో సరిపోలుతుంది స్ట్రింగ్లను అన్వయించడానికి మరియు అవసరమైన సమాచారాన్ని కనుగొనడానికి నిజమైన డేటాపై regexes. మీకు సింటాక్స్ గురించి మరిన్ని వివరాలు అవసరమైతే, రెగ్యులర్ ఎక్స్ప్రెషన్ లాంగ్వేజ్పై Microsoft గైడ్ సహాయకరంగా ఉంటుంది.
Excel కోసం అనుకూల RegEx ఫంక్షన్లు
ఇప్పటికే పేర్కొన్నట్లుగా, Microsoft Excelకి అంతర్నిర్మిత RegEx ఫంక్షన్లు లేవు. సాధారణ వ్యక్తీకరణలను ప్రారంభించడానికి, మేము మూడు అనుకూల VBA ఫంక్షన్లను (అకా వినియోగదారు నిర్వచించిన విధులు) సృష్టించాము. మీరు దిగువ లింక్ చేసిన పేజీల నుండి లేదా మా నమూనా నుండి కోడ్లను కాపీ చేయవచ్చు. వర్క్బుక్, ఆపై మీ స్వంత ఎక్సెల్ ఫైల్లలో అతికించండి.
VBA RegExp ఫంక్షన్లు ఎలా పని చేస్తాయి
ఈ విభాగం అంతర్గత మెకానిక్లను వివరిస్తుంది మరియు పూర్ణంగా ఉండవచ్చు. బ్యాకెండ్లో సరిగ్గా ఏమి జరుగుతుందో తెలుసుకోవాలనుకునే వారికి eresting.
VBAలో సాధారణ వ్యక్తీకరణలను ఉపయోగించడం ప్రారంభించడానికి, మీరు RegEx ఆబ్జెక్ట్ రిఫరెన్స్ లైబ్రరీని సక్రియం చేయాలి లేదా CreateObject ఫంక్షన్ని ఉపయోగించాలి. VBA ఎడిటర్లో రిఫరెన్స్ని సెట్ చేయడంలో మీకు ఉన్న ఇబ్బందిని సేవ్ చేయడానికి, మేము తరువాతి విధానాన్ని ఎంచుకున్నాము.
RegExp ఆబ్జెక్ట్ 4 లక్షణాలను కలిగి ఉంది:
- నమూనా - ఉందిఇన్పుట్ స్ట్రింగ్లో సరిపోలడానికి నమూనా .
- గ్లోబల్ - ఇన్పుట్ స్ట్రింగ్లో అన్ని సరిపోలికలను కనుగొనాలా లేదా మొదటిదానిని కనుగొనాలా అనేదానిని నియంత్రిస్తుంది. మా ఫంక్షన్లలో, అన్ని సరిపోలికలను పొందేందుకు ఇది ఒప్పుకు సెట్ చేయబడింది.
- మల్టిలైన్ - బహుళ-లైన్ స్ట్రింగ్లలో లైన్ బ్రేక్ల అంతటా ప్యాటర్న్ను మ్యాచ్ చేయాలా లేదా మాత్రమే నిర్ణయిస్తుంది మొదటి లైన్ లో. మా కోడ్లలో, ప్రతి లైన్లో ని శోధించడానికి ఇది ఒప్పుకు సెట్ చేయబడింది.
- ఇగ్నోర్కేస్ - సాధారణ వ్యక్తీకరణ కేస్-సెన్సిటివ్ (డిఫాల్ట్) లేదా కేస్- అని నిర్వచిస్తుంది. సున్నితమైనది (ఒప్పుకు సెట్ చేయబడింది). మా విషయంలో, మీరు ఐచ్ఛిక match_case పరామితిని ఎలా కాన్ఫిగర్ చేస్తారు అనే దానిపై ఆధారపడి ఉంటుంది. డిఫాల్ట్గా, అన్ని ఫంక్షన్లు కేస్-సెన్సిటివ్ .
VBA RegExp పరిమితులు
Excel VBA అవసరమైన రీజెక్స్ నమూనాలను అమలు చేస్తుంది, కానీ దీనికి అనేక అధునాతన ఫీచర్లు లేవు. .NET, Perl, Java మరియు ఇతర regex ఇంజిన్లలో అందుబాటులో ఉంది. ఉదాహరణకు, కేస్-ఇన్సెన్సిటివ్ మ్యాచింగ్ కోసం (?i) లేదా బహుళ-లైన్ మోడ్, లుక్బీహైండ్స్, POSIX క్లాస్ల కోసం (?m) వంటి ఇన్లైన్ మాడిఫైయర్లకు VBA RegExp మద్దతు ఇవ్వదు.
Excel Regex మ్యాచ్ ఫంక్షన్
RegExpMatch ఫంక్షన్ సాధారణ వ్యక్తీకరణకు సరిపోలే ఇన్పుట్ స్ట్రింగ్ను శోధిస్తుంది మరియు సరిపోలిక కనుగొనబడితే TRUEని అందిస్తుంది, లేకపోతే తప్పు.
RegExpMatch(టెక్స్ట్, నమూనా, [ match_case])ఎక్కడ:
- వచనం (అవసరం) - శోధించడానికి ఒకటి లేదా అంతకంటే ఎక్కువ స్ట్రింగ్లు.
- నమూనా ( అవసరం) - రెగ్యులర్సరిపోలడానికి వ్యక్తీకరణ.
- Match_case (ఐచ్ఛికం) - మ్యాచ్ రకం. TRUE లేదా విస్మరించబడింది - కేస్-సెన్సిటివ్; తప్పు - కేస్-ఇన్సెన్సిటివ్
ఫంక్షన్ కోడ్ ఇక్కడ ఉంది.
ఉదాహరణ: స్ట్రింగ్లను సరిపోల్చడానికి సాధారణ వ్యక్తీకరణలను ఎలా ఉపయోగించాలి
క్రింది డేటాసెట్లో, మీకు కావలసినది అనుకుందాం SKU కోడ్లను కలిగి ఉన్న ఎంట్రీలను గుర్తించడానికి.
ప్రతి SKU 2 పెద్ద అక్షరాలతో ప్రారంభమవుతుంది, దాని తర్వాత ఒక హైఫన్, దాని తర్వాత 4 అంకెలు ఉంటాయి, మీరు ఈ క్రింది వ్యక్తీకరణను ఉపయోగించి వాటిని సరిపోల్చవచ్చు.
నమూనా : \b[A-Z]{2}-\d{4}\b
ఎక్కడ [A-Z]{2} అంటే A నుండి Z వరకు ఏదైనా 2 పెద్ద అక్షరాలు మరియు \d{4 } అంటే 0 నుండి 9 వరకు ఉన్న ఏవైనా 4 అంకెలు. ఒక పద సరిహద్దు \b అనేది SKU అనేది ఒక ప్రత్యేక పదం మరియు పెద్ద స్ట్రింగ్లో భాగం కాదని సూచిస్తుంది.
నిర్ధారణతో, మీరు సాధారణంగా చేసే విధంగా ఫార్ములా టైప్ చేయడం ప్రారంభించండి , మరియు ఫంక్షన్ యొక్క పేరు Excel యొక్క స్వీయపూర్తి ద్వారా సూచించబడిన జాబితాలో కనిపిస్తుంది:
అసలు స్ట్రింగ్ A5లో ఉందని ఊహిస్తే, ఫార్ములా క్రింది విధంగా ఉంటుంది:
=RegExpMatch(A5, "\b[A-Z]{2}-\d{3}\b")
సౌలభ్యం కోసం, మీరు ప్రత్యేక సెల్లో సాధారణ వ్యక్తీకరణను ఇన్పుట్ చేయవచ్చు మరియు నమూనా ఆర్గ్యుమెన్ కోసం సంపూర్ణ సూచన ($A$2)ని ఉపయోగించవచ్చు t. మీరు ఫార్ములాను ఇతర సెల్లకు కాపీ చేసినప్పుడు సెల్ అడ్రస్ మారకుండా ఉంటుందని ఇది నిర్ధారిస్తుంది:
=RegExpMatch(A5, $A$2)
TRUE మరియు FALSEకి బదులుగా మీ స్వంత టెక్స్ట్ లేబుల్లను ప్రదర్శించడానికి, IF ఫంక్షన్లో nest RegExpMatch మరియు value_if_true మరియు value_if_false లో కావలసిన వచనాలను పేర్కొనండిప్లస్ 5 15 ని ఇస్తుంది, మ్యాచ్లు 15
ప్రత్యామ్నాయం (OR) నిర్మాణం
ఆల్టర్నేషన్ ఆపరేండ్ OR లాజిక్ను ప్రారంభిస్తుంది, కాబట్టి మీరు ఈ లేదా ఆ మూలకంతో సరిపోలవచ్చు.
నిర్మించండి | 14>వివరణఉదాహరణ | మ్యాచ్లు |