Limite de palavras Python Regex

Resumo : neste tutorial, você aprenderá como construir expressões regulares que correspondam às posições dos limites das palavras em uma string.

Introdução ao limite da palavra regex do Python

Uma string possui as seguintes posições que se qualificam como limites de palavras:

  1. Antes do primeiro caractere da string, se o primeiro caractere for um caractere de palavra ( \w).
  2. Entre dois caracteres na string, se o primeiro caractere for um caractere de palavra ( \w) e o outro não for ( \W– conjunto de caracteres inversos do caractere de palavra \w).
  3. Após o último caractere de uma string, se o último caractere for o caractere da palavra ( \w)

A imagem a seguir mostra as posições dos limites da palavra na string "PYTHON 3!":

limite de palavra python regex

Neste exemplo, a "PYTHON 3!"string tem quatro posições de limite de palavra:

  • Antes da letra P (critério nº 1)
  • Após a letra N (critério #2)
  • Antes do dígito 3 (critério #2)
  • Após o dígito 3 (critério #2)

Expressões regulares usam o \bpara representar o limite de uma palavra. Por exemplo, você pode usar o \bpara combinar o todo wordusando o seguinte padrão:

r'\bword\b'Linguagem de código:  JavaScript  ( javascript )

O exemplo a seguir corresponde à palavra Pythonem uma string:

import re

s = 'CPython is the implementation of Python in C'
matches = re.finditer('Python', s)
for match in matches:
    print(match.group())Linguagem de código:  JavaScript  ( javascript )

Ele retorna duas correspondências, uma na palavra CPythone outra na palavra Python.

Python
Python

No entanto, se você usar a palavra border \b, o programa retornará uma correspondência:

import re

s = 'CPython is the implementation of Python in C'
matches = re.finditer(r'\bPython\b', s)
for match in matches:
    print(match.group())
Linguagem de código:  JavaScript  ( javascript )

Saída:

<re.Match object; span=(33, 39), match='Python'>Linguagem de código:  HTML, XML  ( xml )

Neste exemplo, o '\bPython\b'padrão corresponde à palavra inteira Pythonna string 'CPython is the implementation of Python in C'.

Resumo

  • O \brepresenta um limite de palavra em uma string.
  • Use o r'\bword\b'padrão para combinar com o todoword

Deixe um comentário

O seu endereço de email não será publicado. Campos obrigatórios marcados com *