⊗pyPmREMSP 58 of 129 menu

Capturas na String de Substituição em Python

Ao trabalhar com o método sub, se você precisa colocar algo em um grupo de captura na expressão regular, na string de substituição você pode inserir o conteúdo desse grupo de captura escrevendo uma barra invertida dupla \ e o número do grupo. Por exemplo, \1 - primeiro grupo de captura, \2 - segundo grupo de captura e assim por diante.

Vamos ver para que isso serve e como usar com exemplos.

Exemplo

Vamos encontrar todos os números e, em vez deles, inserir esses mesmos números, mas entre parênteses. Para isso, substituiremos todos os números encontrados por eles mesmos, mas entre parênteses:

txt = '1 23 456 xax' res = re.sub('(\d+)', '(\1)', txt) print(res)

Como resultado, será armazenado na variável o seguinte:

'(1) (23) (456) xax'

Exemplo

Vamos encontrar todas as strings que representam números com 'x' ao redor e substituir esses números por eles mesmos, mas com '!' ao redor:

txt = 'x1x x23x x456x xax' res = re.sub('x(\d+)x', '!\1!', txt) print(res)

Como resultado, será armazenado na variável o seguinte:

'!1! !23! !456! xax'

Exemplo

Vamos resolver o seguinte problema: dada a string 'aaa@bbb ccc@ddd' - letras, depois arroba, depois letras. Precisamos trocar a ordem das letras na substring 'aaa@bbb' antes da '@' e depois:

txt = 'aaa@bbb ccc@ddd' res = re.sub('([a-z]+)@([a-z]+)', '\2@\1', txt) print(res)

Como resultado, será armazenado na variável o seguinte:

'bbb@aaa ccc@ddd'

Problemas Práticos

Dada a string:

txt = '12 34 56 78'

Troque a ordem dos dígitos em todos os números de dois dígitos.

Dada uma string com uma data:

txt = '31.12.2025'

Converta esta data para '2025.12.31'.

Português
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Nós usamos cookies para o funcionamento do site, análises e personalização. O processamento de dados é realizado de acordo com a Política de Privacidade.
aceitar todas configurar rejeitar