Et regelmæssigt udtryk (regex) er en række af tegn, der definerer et søgemønster. Sådan skriver du regelmæssige udtryk:
wumpus verden
- Start med at forstå de specialtegn, der bruges i regex som '.' '*' '+' '?' Og mere.
- Vælg et programmeringssprog eller værktøj, der understøtter regex såsom Python Perl eller Grep.
- Skriv dit mønster ved hjælp af specialtegnene og bogstavelige tegn.
- Brug den passende funktion eller metode til at søge efter mønsteret i en streng.
Eksempler:
- For at matche en række bogstavelige tegn skal du blot skrive disse tegn i mønsteret.
- For at matche en enkelt karakter fra et sæt muligheder skal du bruge firkantede parenteser f.eks. [0123456789] matcher ethvert ciffer.
- For at matche nul eller flere forekomster af det foregående udtryk skal du bruge stjernen (*) -symbolet.
- For at matche en eller flere forekomster af det foregående udtryk skal du bruge plus (+) -symbolet.
- Det er vigtigt at bemærke, at regex kan være kompleks og vanskelig at læse, så det anbefales at bruge værktøjer som regex -testere til at debug og optimere dine mønstre.
Et regelmæssigt udtryk (undertiden kaldet et rationelt udtryk) er en sekvens af tegn, der definerer et søgemønster hovedsageligt til brug i mønster, der matcher med strenge eller streng matchning, dvs. 'find og udskift' som operationer. Regelmæssige udtryk er en generaliseret måde at matche mønstre med sekvenser af karakterer. Det bruges på hvert programmeringssprog som C ++ Java og Python.
Hvad er et regelmæssigt udtryk, og hvad gør det så vigtigt?
Regex bruges i Google Analytics I URL -matching i understøttende søgning og erstatter i de fleste populære redaktører som Sublime Notepad ++ Brackets Google Docs og Microsoft Word.
Example : Regular expression for an email address :
^([a-zA-Z0-9_-.]+)@([a-zA-Z0-9_-.]+).([a-zA-Z]{25})$
Ovenstående regelmæssige udtryk kan bruges til at kontrollere, om et givet sæt tegn er en e -mail -adresse eller ej.
Hvordan man skriver regelmæssige udtryk?
Der er visse elementer, der bruges til at skrive regelmæssige udtryk som nævnt nedenfor:
1. repeatere (* + og {})
Disse symboler fungerer som repeatere og fortæller computeren, at den foregående karakter skal bruges til mere end blot én gang.
2. Asterisk Symbol ( *)
Den fortæller computeren at matche den foregående karakter (eller sæt tegn) for 0 eller flere gange (op til uendelig).
Example : The regular expression ab*c will give ac abc abbc abbbc….and so on 3. plus -symbolet ( +)
Den beder computeren om at gentage den foregående karakter (eller sæt tegn) på mindst en eller flere gange (op til uendelig).
Example : The regular expression ab+c will give abc abbc
abbbc … and so on.
4. de krøllede seler {…}
Den beder computeren om at gentage den foregående karakter (eller sæt tegn) i så mange gange som værdien inde i denne beslag.
Example : {2} means that the preceding character is to be repeated 2
times {min} means the preceding character is matches min or more
times. {minmax} means that the preceding character is repeated at
least min & at most max times.
5. Wildcard (.)
DOT -symbolet kan indtage stedet for ethvert andet symbol, det er derfor, det kaldes Wildcard -karakteren.
Example :
The Regular expression .* will tell the computer that any character
can be used any number of times.
6. Valgfri karakter (?)
Dette symbol fortæller computeren, at den foregående karakter muligvis ikke er til stede i den streng, der skal matches.
Example :
We may write the format for document file as – docx?
The ‘?’ tells the computer that x may or may not be
present in the name of file format.
7. Symbolet ( ^) ( Indstilling af position til kampen)
CARET -symbolet fortæller computeren, at kampen skal starte i begyndelsen af strengen eller linjen.
Example : ^d{3} will match with patterns like '901' in '901-333-'.8. Symbolet om dollar ($)
Den fortæller computeren, at kampen skal forekomme i slutningen af strengen eller før N i slutningen af linjen eller strengen.
Example : -d{3}$ will match with patterns like '-333' in '-901-333'.9. Karakterklasser
En karakterklasse matcher et hvilket som helst af et sæt tegn. Det bruges til at matche det mest basale element i et sprog som et bogstav et ciffer et rum et symbol osv.
eks af brugernavn
s : Matcher eventuelle whitespace -tegn som plads og fane.
S : matcher eventuelle ikke-whitespace-tegn.
d : matcher enhver cifret karakter.
D: matcher eventuelle ikke-cifrede tegn.
I : matcher ethvert ordkarakter (dybest set alfa-numerisk)
I : matcher enhver ikke-ord-karakter.
b : matcher enhver ordgrænse (dette vil omfatte rumstreger kommaer semi-colons osv.
[set_of_characters]: Matcher enhver enkelt karakter i SET_OF_CHARACTERS. Som standard er kampen det store og små bogstaver.
Example : [abc] will match characters ab and c in any string.10. [^set_of_characters] Negation:
Matcher enhver enkelt karakter, der ikke er i SET_OF_CHARACTERS. Som standard er kampen det store og små bogstaver.
Example : [^abc] will match any character except abc .11. [Første sidste] Karakterområde:
Matcher enhver enkelt karakter i området fra først til sidst.
Example : [a-zA-z] will match any character from a to z or A to Z.12. Flugtsymbolet ()
Hvis du vil matche for den faktiske '+' '.' Osv. Tegn tilføjer en backslash () før denne karakter. Dette fortæller computeren at behandle følgende tegn som en søgekarakter og betragte den til et matchende mønster.
Example : d+[+-x*]d+ will match patterns like '2+2'
and '3*9' in '(2+2) * 3*9'.
13. Gruppering af tegn ()
Et sæt forskellige symboler på et regelmæssigt udtryk kan grupperes for at fungere som en enkelt enhed og opføre sig som en blok for dette, du har brug for at pakke det almindelige udtryk i parentesen ().
Example : ([A-Z]w+) contains two different elements of the regular
expression combined together. This expression will match any pattern
containing uppercase letter followed by any character.
14. Lodret bar (|)
Matcher ethvert element adskilt af den lodrette bjælke (|) karakter.
Example : th(e|is|at) will match words - the this and that.15. nummer
Backreference: tillader, at en tidligere matchet underekspression (ekspression er optaget eller lukket i cirkulære parenteser), der kan identificeres efterfølgende i det samme almindelige udtryk. n betyder, at gruppe, der er lukket i den n-th-beslag, gentages i den nuværende position.
gør mens loop i java
Example : ([a-z])1 will match ee in Geek because the character
at second position is same as character at position 1 of the match.
16. Hvordan (?# Kommentar)
Inline kommentar: Kommentaren slutter ved den første afsluttende parentes.
Example : bA(?#This is an inline comment)w+b17. # [til slutningen af linjen]
X-mode kommentar. Kommentaren starter ved et uudviklet # og fortsætter til slutningen af linjen.
Example : (?x)bAw+b#Matches words starting with A