Substituição de corda Python usando padrão

Substituição de corda Python usando padrão
Qualquer dados da string pode ser substituído por outra string em python usando o substituto () método. Mas se você deseja substituir qualquer parte da string, combinando um padrão específico, precisará usar uma expressão regular. É usado para pesquisar um padrão específico em um valor de string específico e a string será substituída por outra string se alguma correspondência encontrada. Usos python 'ré' módulo para usar o padrão de expressão regular no script para pesquisa ou correspondência ou substituição. O uso de padrões de expressão regular para substituição de cordas é um pouco mais lento que o método de substituição () de substituição (), mas muitas pesquisas e substituições complicadas podem ser feitas facilmente usando o padrão. Você pode substituir uma string de várias maneiras usando o padrão em python. Alguns usos comuns do padrão para substituir a string são mostrados neste tutorial. Spyder3 O editor é usado aqui para escrever e executar o script.

Lista de Metacharacters:

Antes de usar o padrão para substituir a string, você precisa saber a maneira de escrever um padrão de expressão regular. Você pode usar qualquer valor de string como padrão para a correspondência exata. Mas para a pesquisa específica, você deve escrever o padrão de expressão regular usando Metacharacter. A lista dos Metacharacters mais usados ​​para padrões de escrita é dada abaixo com significado.

Personagem Descrição
. É usado para corresponder a qualquer caractere, exceto uma nova linha.
^ É usado para combinar com qualquer personagem ou string no início do

corda.

$ É usado para combinar com qualquer caractere ou string no final da string.
+ É usado para corresponder a uma ou mais ocorrências do padrão.
? É usado para corresponder a zero ou uma ocorrência do padrão.
() É usado para agrupar padrões.
É usado para corresponder com base em inferior ou superior ou inferior e superior

limites.

[] É usado para combinar com os caracteres com base no intervalo especificado.
| É usado para combinar padrões com base ou lógica.
\ É usado para definir caracteres específicos ou não características ou dígitos ou

não dígitos.

Método de substituição:

sub() método de 'ré' O módulo é usado em python para a substituição de string.

Sintaxe:

sub (padrão, substitua, string, count = 0, sinalizadores = 0)

Aqui padrão, substituir e corda são argumentos obrigatórios. Se o padrão é combinado com qualquer parte do corda Em seguida, ele substituirá a parte pelo valor de substituindo o argumento. Os outros dois argumentos são opcionais. Alguns usos dos metacharacters acima mencionados com o método sub () são mostrados nos seguintes exemplos de substituição de string.

Exemplo 1: Substitua a string por correspondência exata

Se você souber o valor exato da string que deseja pesquisar na sequência principal, pode usar o valor da string de pesquisa como um padrão em sub() método. Crie um arquivo python com o seguinte script. Aqui, o valor da string de busca é 'chuvoso' e o valor da string de substituição é 'Sunny'.

#!/usr/bin/Env Python3
# Importar módulo regex
importar re
# Defina uma corda
orgstr = "é um dia chuvoso"
# Substitua a string
repst = re.sub ("chuvoso", "ensolarado", orgstr)
# Imprima a string original
print ("texto original:", orgstr)
# Imprima a corda substituída
print ("texto substituído:", repst)

Saída:

A saída é mostrada no lado direito da imagem.

Exemplo 2: Pesquise e substitua a string no início

Crie um arquivo python com o seguinte script para saber o uso de '^' no padrão de expressão regular. Aqui, '^[A-za-z]+' é usado como padrão de pesquisa. Ele pesquisará todos os personagens alfabéticos de A para Z e a para z no início do texto e substitua -o por um valor vazio. A sequência substituída será impressa em maiúsculas para superior() método.

#!/usr/bin/Env Python3
# Importar módulo regex
importar re
# Tire uma entrada de string
originaltext = input ("Digite um texto \ n")
# Substitua a string com base no padrão
substituídoText = re.sub ('^[a-za-z]+', ", originaltext).superior()
# Imprima a corda substituída
print ("Texto substituído:", substituído Text)

Saída:

A saída é mostrada no lado direito da imagem. Aqui, 'Olá, bem -vindo ao linuxhint' é tomado como entrada e 'Olá' A palavra é substituída por " para o padrão.

Exemplo 3: Pesquise e substitua a string no final

Crie um arquivo python com o seguinte script para saber o uso de '$ ' símbolo no padrão de expressão regular. Aqui, '[A-Z0-9]+$'é usado como um padrão no script. Ele pesquisará todos os pequenos alfabetos e dígitos no final do texto e, se retornar verdadeiros, a parte correspondente será substituída pela string 'com.bd'.

#!/usr/bin/Env Python3
# Importar módulo regex
importar re
# Tire uma entrada de string
OriginalText = input ("Digite um endereço de URL \ n")
# Substitua a string com base no padrão
substituídoText = re.sub ('[a-z0-9]+$', 'com.BD ', OriginalText)
# Imprima a corda substituída
print ("Texto substituído:", substituído Text)

Saída:

A saída é mostrada no lado direito da imagem. Aqui, 'https: // www.Google.com 'é tomado como texto de entrada e depois de substituir,' https: // www.Google.com.BD 'é impresso como saída.

Exemplo-4: Pesquise e substitua a parte específica de uma string

Crie um arquivo python com o seguinte script para pesquisar e substituir a parte do texto no local onde o padrão corresponde. Aqui, uma lista de endereços de email é atribuída como texto na variável nomeada e -mails. '@[a-z]' é usado padrão para pesquisar. Ele pesquisará qualquer sub-cordão começar com pequenos alfabetos seguidos por '@'Símbolo. Se qualquer sub-string corresponder, ele substituirá essa sub-string por '@Linuxhint'.

#!/usr/bin/Env Python3
# Importar módulo regex
importar re
# Defina uma corda
emails = '\ [email protected] \ [email protected] \ [email protected] '
# Substitua a parte específica da string com base no padrão
substituídoText = re.sub ('@[a-z]*', '@linuxhint', e-mails)
# Imprima a string original
print ("texto original:", e -mails)
# Imprima a corda substituída
Print ("\ nReplaced Text:", SubstituedText)

Saída:

A saída é mostrada no lado direito da imagem. Aqui, todas as partes do domínio do endereço de e -mail atribuídas no texto são substituídas por 'Linuxhint'.

Conclusão:

Alguns usos muito comuns dos padrões regulares de expressão são mostrados neste tutorial para substituição de string. Muitas outras opções existem em Python para escrever diferentes tipos de padrões simples e complicados para pesquisar e substituir a string do texto.

Assista ao vídeo do autor: aqui