Lista de metacaractere:
Înainte de a utiliza modelul pentru a înlocui șirul, trebuie să știți modul de a scrie un model de expresie regulată. Puteți utiliza orice valoare de șir ca model pentru potrivirea exactă. Dar pentru căutarea specifică, trebuie să scrieți modelul de expresie regulată folosind metacaracter. Lista celor mai utilizate metacaractere pentru scrierea tiparelor este dată mai jos cu semnificație.
Caracter | Descriere |
. | Se folosește pentru a se potrivi cu orice caracter, cu excepția unei linii noi. |
^ | Este folosit pentru a se potrivi cu orice caracter sau șir la începutul şir. |
$ | Este folosit pentru a se potrivi cu orice caracter sau șir la sfârșitul șirului. |
+ | Este folosit pentru a potrivi una sau mai multe apariții ale modelului. |
? | Este folosit pentru a potrivi zero sau o apariție a modelului. |
() | Este folosit pentru gruparea tiparelor. |
Se folosește pentru a se potrivi pe baza inferioară sau superioară sau ambele inferioare și superioare limite. | |
[] | Se folosește pentru a potrivi caractere pe baza intervalului dat. |
| | Este folosit pentru a potrivi modele bazate pe logica SAU. |
\ | Este folosit pentru a defini caractere specifice sau non-caractere sau cifre sau fără cifre. |
Metoda de înlocuire:
sub () Metodă de 're' modulul este utilizat în Python pentru înlocuirea șirului.
Sintaxă:
sub (model, înlocuire, șir, număr = 0, steaguri = 0)Aici model, a inlocui și şir sunt argumente obligatorii. Dacă model este asortat cu orice parte a şir apoi va înlocui piesa cu valoarea lui înlocuind argument. Celelalte două argumente sunt opționale. Unele utilizări ale metacaracterelor menționate mai sus cu metoda sub () sunt prezentate în următoarele exemple de înlocuire a șirurilor.
Exemplu-1: Înlocuiți șirul prin potrivirea exactă
Dacă cunoașteți valoarea exactă a șirului pe care doriți să o căutați în șirul principal, atunci puteți utiliza valoarea șirului de căutare ca model în sub () metodă. Creați un fișier python cu următorul script. Aici, valoarea șirului de căutare este „ploioasă”, iar valoarea șirului de înlocuire este „însorită”.
#!/ usr / bin / env python3# Importați modul regex
import re
# Definiți un șir
orgStr = "Este o zi ploioasă"
# Înlocuiți șirul
repStr = re.sub ("ploios", "însorit", orgStr)
# Imprimați șirul original
print ("Text original:", orgStr)
# Imprimați șirul înlocuit
print ("Text înlocuit:", repStr)
Ieșire:
Ieșirea este afișată în partea dreaptă a imaginii.
Exemplu-2: Căutați și înlocuiți șirul la început
Creați un fișier python cu următorul script pentru a cunoaște utilizarea „^” în tiparul de expresie regulată. Aici, '^ [A-Za-z] + ' este folosit ca model de căutare. Va căuta toate caracterele alfabetice din A la Z și A la z la începutul textului și înlocuiți-l cu o valoare goală. Șirul înlocuit va fi tipărit cu majusculă pentru superior() metodă.
#!/ usr / bin / env python3# Importați modul regex
import re
# Luați o intrare de șir
originalText = input ("Introduceți un text \ n")
# Înlocuiți șirul pe baza modelului
Text înlocuit = re.sub ('^ [A-Za-z] +', ", text original).superior()
# Imprimați șirul înlocuit
print ("Text înlocuit:", Text substituit)
Ieșire:
Ieșirea este afișată în partea dreaptă a imaginii. Aici, „Bună, bun venit la linuxhint” este luat ca intrare și 'Buna ziua' cuvântul este înlocuit cu " pentru tipar.
Exemplu-3: Căutați și înlocuiți șirul la sfârșit
Creați un fișier python cu următorul script pentru a cunoaște utilizarea „$ ' simbol în modelul de expresie regulată. Aici, '[a-z0-9] + $'este folosit ca model în script. Va căuta toate alfabetele și cifrele mici de la sfârșitul textului și dacă returnează adevărat, atunci partea potrivită va fi înlocuită de șir,com.bd'.
#!/ usr / bin / env python3# Importați modul regex
import re
# Luați o intrare de șir
originalText = input ("Introduceți o adresă URL \ n")
# Înlocuiți șirul pe baza modelului
Text înlocuit = re.sub ('[a-z0-9] + $', 'com.bd ', text original)
# Imprimați șirul înlocuit
print ("Text înlocuit:", Text substituit)
Ieșire:
Ieșirea este afișată în partea dreaptă a imaginii. Aici, „https: // www.Google.com 'este luat ca text de intrare și după înlocuire,' https: // www.Google.com.bd 'este tipărit ca ieșire.
Exemplul-4: Căutați și înlocuiți partea specifică a unui șir
Creați un fișier python cu următorul script pentru a căuta și înlocui partea textului în locul în care modelul se potrivește. Aici, o listă de adrese de e-mail este atribuită ca text variabilei denumite e-mailuri. „@ [a-z]” este un model folosit pentru căutare. Va căuta orice sub-șir începe cu alfabete mici urmate de „@simbolul. Dacă un sub-șir se potrivește, acesta va înlocui acel șir cu „@linuxhint'.
#!/ usr / bin / env python3# Importați modul regex
import re
# Definiți un șir
email-uri = '\ n [email protected] \ n [email protected] \ n [email protected]'
# Înlocuiți partea specifică a șirului pe baza modelului
Text înlocuit = re.sub ('@ [a-z] *', '@linuxhint', e-mailuri)
# Imprimați șirul original
print („Text original:”, e-mailuri)
# Imprimați șirul înlocuit
print ("\ nText înlocuit:", text înlocuit)
Ieșire:
Ieșirea este afișată în partea dreaptă a imaginii. Aici, fiecare parte a domeniului din adresa de e-mail atribuită în text este înlocuită cu „linuxhint'.
Concluzie:
Unele utilizări foarte frecvente ale modelelor de expresie regulată sunt prezentate în acest tutorial pentru înlocuirea șirurilor. Există multe alte opțiuni în Python pentru a scrie diferite tipuri de modele simple și complicate pentru căutarea și înlocuirea șirului textului.
Urmăriți videoclipul autorului: aici