Liste over metategn:
Før du bruker mønsteret til å erstatte streng, må du vite hvordan du skriver et mønster med vanlig uttrykk. Du kan bruke hvilken som helst strengverdi som et mønster for nøyaktig samsvar. Men for det spesifikke søket, må du skrive mønsteret for vanlig uttrykk ved å bruke metategn. Listen over de mest brukte metategnene for å skrive mønstre er gitt nedenfor med betydning.
Karakter | Beskrivelse |
. | Den brukes til å matche et enkelt tegn bortsett fra en ny linje. |
^ | Den brukes til å matche et hvilket som helst tegn eller streng i begynnelsen av streng. |
$ | Den brukes til å matche hvilket som helst tegn eller streng på slutten av strengen. |
+ | Den brukes til å matche en eller flere forekomster av mønsteret. |
? | Den brukes til å matche null eller en forekomst av mønsteret. |
() | Den brukes til gruppering av mønstre. |
Den brukes til å matche basert på nedre eller øvre eller både nedre og øvre grenser. | |
[] | Den brukes til å matche tegn basert på det gitte området. |
| | Den brukes til å matche mønstre basert på ELLER logikk. |
\ | Den brukes til å definere bestemte tegn eller ikke-tegn eller sifre eller ikke-sifre. |
Erstatt metode:
under() Metode av 're' modulen brukes i Python for strengerstatning.
Syntaks:
sub (mønster, erstatt, streng, count = 0, flags = 0)Her mønster, erstatte og streng er obligatoriske argumenter. Hvis den mønster samsvarer med hvilken som helst del av streng da vil den erstatte delen med verdien av erstatte argument. De to andre argumentene er valgfrie. Noen bruksområder av de ovennevnte metategnene med sub () -metoden er vist i de følgende eksemplene på strengerstatning.
Eksempel 1: Erstatt streng etter eksakt samsvar
Hvis du vet nøyaktig strengverdien du vil søke i hovedstrengen, kan du bruke søkestrengverdien som et mønster i under() metode. Opprett en python-fil med følgende skript. Her er den søkende strengverdien 'regnfull' og den erstattende strengverdien er 'solrik'.
#!/ usr / bin / env python3# Importer regex-modul
importer re
# Definer en streng
orgStr = "Det er en regnværsdag"
# Bytt ut strengen
repStr = re.sub ("rainy", "sunny", orgStr)
# Skriv ut den originale strengen
print ("Original Text:", orgStr)
# Skriv ut den erstattede strengen
print ("Erstatt tekst:", repStr)
Produksjon:
Utgangen vises på høyre side av bildet.
Eksempel 2: Søk og erstatt streng i begynnelsen
Lag en python-fil med følgende skript for å vite bruken av '^' i det vanlige uttrykksmønsteret. Her, '^ [A-Za-z] + ' brukes som søkemønster. Det vil søke i alle alfabetiske tegn fra EN til Z og en til z i begynnelsen av teksten og erstatt den med en tom verdi. Den erstattede strengen skrives ut med store bokstaver for øverste() metode.
#!/ usr / bin / env python3# Importer regex-modul
importer re
# Ta en strenginngang
originalText = input ("Skriv inn en tekst \ n")
# Bytt ut strengen basert på mønsteret
erstattet tekst = re.sub ('^ [A-Za-z] +', ", originalText).øverste()
# Skriv ut den erstattede strengen
print ("Erstatt tekst:", erstattet tekst)
Produksjon:
Utgangen vises på høyre side av bildet. Her, 'Hei, velkommen til linuxhint' blir tatt som input og 'Hallo' word erstattes av " for mønsteret.
Eksempel 3: Søk og erstatt streng på slutten
Lag en python-fil med følgende skript for å vite bruken av '$ ' symbol i mønster for vanlig uttrykk. Her, '[a-z0-9] + $'brukes som et mønster i skriptet. Den vil søke i alle små alfabeter og sifre på slutten av teksten, og hvis den returnerer sant, blir den matchende delen erstattet av strengen, 'com.bd'.
#!/ usr / bin / env python3# Importer regex-modul
importer re
# Ta en strenginngang
originalText = input ("Skriv inn en url-adresse \ n")
# Bytt ut strengen basert på mønsteret
erstattet tekst = re.sub ('[a-z0-9] + $', 'com.bd ', originalText)
# Skriv ut den erstattede strengen
print ("Erstatt tekst:", erstattet tekst)
Produksjon:
Utgangen vises på høyre side av bildet. Her, 'https: // www.Google.com 'blir tatt som inngangstekst og etter erstattet,' https: // www.Google.com.bd 'skrives ut som utdata.
Eksempel 4: Søk og erstatt den spesifikke delen av en streng
Opprett en python-fil med følgende skript for å søke og erstatte den delen av teksten på stedet der mønsteret samsvarer. Her tildeles en liste over e-postadresser som tekst til variabelen som heter e-post. '@ [a-z]' brukes til å søke. Den vil søke i hvilken som helst understreng starter med små alfabeter etterfulgt av '@'symbol. Hvis noen understrenger stemmer overens, vil den erstatte den understrengen med '@linuxhint'.
#!/ usr / bin / env python3# Importer regex-modul
importer re
# Definer en streng
emails = '\ n [email protected] \ n [email protected] \ n [email protected]'
# Erstatt den spesifikke delen av strengen basert på mønster
erstattet tekst = re.sub ('@ [a-z] *', '@linuxhint', e-post)
# Skriv ut den originale strengen
print ("Original Text:", emails)
# Skriv ut den erstattede strengen
print ("\ nUtskiftet tekst:", erstattet tekst)
Produksjon:
Utgangen vises på høyre side av bildet. Her erstattes alle domenedeler av e-postadressen som er tildelt i teksten med 'linuxhint'.
Konklusjon:
Noen veldig vanlige bruksområder for regulære uttrykksmønstre er vist i denne veiledningen for erstatning av streng. Det finnes mange andre alternativer i python for å skrive forskjellige typer enkle og kompliserte mønstre for å søke og erstatte tekststrengen.
Se forfatterens video: her