"Se um trabalhador quiser fazer bem o seu trabalho, ele deve primeiro afiar suas ferramentas." - Confúcio, "Os Analectos de Confúcio. Lu Linggong"
Primeira página > Programação > Qual é a diferença entre "\d" e "[0-9]" nas expressões regulares do Python?

Qual é a diferença entre "\d" e "[0-9]" nas expressões regulares do Python?

Publicado em 2024-11-08
Navegar:347

What is the difference between

[Characters]: \d em Regex

A classe de caracteres "\d" em expressões regulares no estilo Python é usada para corresponder dígitos. Um dígito normalmente é definido como um caractere numérico (0-9). No entanto, é importante notar que o comportamento de "\d" pode variar dependendo da linguagem de programação e implementação.

No caso do Python, "\d" corresponde a caracteres que satisfazem o \p{Nd} do Unicode. propriedade, que inclui o seguinte:

  • [0-9] - dígitos ASCII
  • À-Þ, à-þ - Latin-1 dígitos
  • 0-9 - dígitos CJK
  • ٠-٩ - dígitos árabe-índicos

Observação:

Você mencionou que na sequência "123", "\d" corresponde a "1" e "3", mas não a "2". Isso ocorre porque "\d" do Python corresponde a dígitos Unicode, que incluem apenas caracteres selecionados como "1" e "3" em um determinado contexto. O caractere "2", neste caso, não seria reconhecido como um dígito Unicode.

Para corresponder a qualquer caractere de dígito, independentemente do contexto ou idioma, você deve usar "[0-9]".

Tutorial mais recente Mais>

Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.

Copyright© 2022 湘ICP备2022001581号-3