Piton

Înlocuirea șirului Python folosind modelul

Înlocuirea șirului Python folosind modelul
Orice șir de date poate fi înlocuit cu un alt șir în Python folosind the replace () metodă. Dar dacă doriți să înlocuiți orice parte a șirului prin potrivirea unui anumit model, atunci trebuie să utilizați o expresie regulată. Este folosit pentru a căuta un anumit model într-o anumită valoare a șirului și șirul va fi înlocuit cu un alt șir dacă se găsește o potrivire. Python folosește 're' modul pentru a utiliza un model de expresie regulată în script pentru căutare sau potrivire sau înlocuire. Folosirea modelelor de expresie regulată pentru înlocuirea șirurilor este puțin mai lentă decât metoda replace () normală, dar multe căutări și înlocuiri complicate se pot face cu ușurință folosind modelul. Puteți înlocui un șir în diferite moduri folosind modelul din Python. Unele utilizări obișnuite ale modelului pentru a înlocui șirul sunt prezentate în acest tutorial. Spyder3 editorul este folosit aici pentru a scrie și rula scriptul.

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

Vulkan for Linux Users
With each new generation of graphics cards, we see game developers push the limits of graphical fidelity and come one step closer to photorealism. But...
OpenTTD vs Simutrans
Creating your own transport simulation can be fun, relaxing and extremely enticing. That's why you need to make sure that you try out as many games as...
OpenTTD Tutorial
OpenTTD is one of the most popular business simulation games out there. In this game, you need to create a wonderful transportation business. However,...