Popis metaznaka:
Prije korištenja uzorka za zamjenu niza, morate znati način pisanja uzorka regularnog izraza. Možete koristiti bilo koju vrijednost niza kao uzorak za točno podudaranje. Ali za određeno pretraživanje, morate napisati obrazac regularnog izraza pomoću metaznaka. Popis najčešće korištenih metaznakova za pisanje obrazaca dan je sa značenjem.
Lik | Opis |
. | Koristi se za podudaranje bilo kojeg pojedinog znaka, osim novog retka. |
^ | Koristi se za podudaranje s bilo kojim znakom ili nizom na početku niz. |
$ | Koristi se za podudaranje s bilo kojim znakom ili nizom na kraju niza. |
+ | Koristi se za podudaranje jedne ili više pojava uzorka. |
? | Koristi se za podudaranje s nulom ili jednom pojavom uzorka. |
() | Koristi se za grupiranje uzoraka. |
Koristi se za podudaranje na temelju donjeg ili gornjeg ili i donjeg i gornjeg ograničenja. | |
[] | Koristi se za podudaranje znakova na temelju zadanog raspona. |
| | Koristi se za podudaranje obrazaca zasnovanih na ILI logici. |
\ | Koristi se za definiranje specifičnih znakova ili ne-znakova ili znamenki ili neznamenkasti. |
Zamijenite metodu:
pod() metoda 'ponovno' modul se koristi u Pythonu za zamjenu niza.
Sintaksa:
pod (obrazac, zamjena, niz, brojanje = 0, zastavice = 0)Ovdje uzorak, zamijeniti i niz su obvezni argumenti. Ako je uzorak podudara se s bilo kojim dijelom niz tada će dio zamijeniti vrijednošću zamjenjujući argument. Druga dva argumenta nisu obavezna. Neke upotrebe gore spomenutih metakaraktera s metodom sub () prikazane su u sljedećim primjerima zamjene niza.
Primjer-1: Zamijenite niz točno podudaranjem
Ako znate točnu vrijednost niza koju želite pretraživati u glavnom nizu, tada možete koristiti vrijednost niza za pretragu kao obrazac u pod() metoda. Stvorite python datoteku sa sljedećom skriptom. Ovdje je vrijednost niza za pretraživanje 'kišno', a vrijednost niza koji zamjenjuje je 'sunčano'.
#!/ usr / bin / env python3# Uvoz modula regularnog izraza
uvoz re
# Definirajte niz
orgStr = "Kišan je dan"
# Zamijenite niz
repStr = re.sub ("kišovito", "sunčano", orgStr)
# Ispis originalnog niza
ispis ("Izvorni tekst:", orgStr)
# Ispišite zamijenjeni niz
ispis ("Zamijenjeni tekst:", repStr)
Izlaz:
Izlaz je prikazan na desnoj strani slike.
Primjer-2: Pretražite i zamijenite niz na početku
Stvorite python datoteku sa sljedećom skriptom da biste znali kako se koristi '^' u uzorku regularnog izraza. Evo, '^ [A-Za-z] + ' koristi se kao obrazac pretraživanja. Pretražit će sve abecedne znakove iz A do Z i a do z na početku teksta i zamijenite ga praznom vrijednošću. Zamijenjeni niz bit će ispisan velikim slovom za Gornji() metoda.
#!/ usr / bin / env python3# Uvoz modula regularnog izraza
uvoz re
# Unesite niz
originalText = input ("Unesite tekst \ n")
# Zamijenite niz na temelju uzorka
replaceText = re.sub ('^ [A-Za-z] +', ", originalText).Gornji()
# Ispišite zamijenjeni niz
ispis ("Zamijenjeni tekst:", replaceText)
Izlaz:
Izlaz je prikazan na desnoj strani slike. Ovdje, 'Pozdrav, dobrodošli u linuxhint' uzima se kao ulaz i 'Zdravo' riječ se zamjenjuje s " za uzorak.
Primjer-3: Traži i zamijeni niz na kraju
Stvorite python datoteku sa sljedećom skriptom kako biste znali upotrebu '$ ' simbol u uzorku regularnog izraza. Evo, '[a-z0-9] + $'koristi se kao obrazac u skripti. Pretražit će sve male abecede i znamenke na kraju teksta, a ako vrati true, odgovarajući će dio biti zamijenjen nizom, 'com.bd'.
#!/ usr / bin / env python3# Uvoz modula regularnog izraza
uvoz re
# Unesite niz
originalText = input ("Unesite URL adresu \ n")
# Zamijenite niz na temelju uzorka
replaceText = re.pod ('[a-z0-9] + $', 'kom.bd ', originalText)
# Ispišite zamijenjeni niz
ispis ("Zamijenjeni tekst:", replaceText)
Izlaz:
Izlaz je prikazan na desnoj strani slike. Evo, 'https: // www.google.com 'uzima se kao ulazni tekst, a nakon zamjene,' https: // www.google.com.bd 'ispisuje se kao izlaz.
Primjer 4: Pretražite i zamijenite određeni dio niza
Stvorite python datoteku sa sljedećom skriptom za pretraživanje i zamjenu dijela teksta na mjestu gdje se obrazac podudara. Ovdje je popis adresa e-pošte dodijeljen kao tekst u imenovanu varijablu e-mailova. '@ [a-z]' koristi se obrazac za pretraživanje. Pretražit će bilo koji podniz koji započinje malim abecedama iza kojih slijedi '@'simbol. Ako se bilo koji podniz podudara, tada će ga zamijeniti s '@ linuxhint'.
#!/ usr / bin / env python3# Uvoz modula regularnog izraza
uvoz re
# Definirajte niz
e-adrese = '\ n [zaštićena e-poštom] \ n [zaštićena e-poštom] \ n [zaštićena e-poštom]'
# Zamijenite određeni dio niza na temelju uzorka
replaceText = re.pod ('@ [a-z] *', '@linuxhint', e-adrese)
# Ispis originalnog niza
ispis ("Izvorni tekst:", e-poruke)
# Ispišite zamijenjeni niz
print ("\ nZamijenjeni tekst:", replaceText)
Izlaz:
Izlaz je prikazan na desnoj strani slike. Ovdje se svaki dio domene adrese e-pošte dodijeljene u tekstu zamjenjuje s 'linuxhint'.
Zaključak:
Neke vrlo uobičajene upotrebe obrazaca regularnih izraza prikazane su u ovom vodiču za zamjenu niza. U pythonu postoje mnoge druge mogućnosti za pisanje različitih vrsta jednostavnih i složenih obrazaca za pretraživanje i zamjenu niza teksta.
Pogledajte autorski video: ovdje