Python 3.15 marca re.match() como soft-deprecated y lo sustituye por re.prefixmatch()

Fuentes: Soft-deprecating re.match()

Python 3.15 introduce el alias re.prefixmatch() como reemplazo de re.match() y marca esta última función como soft-deprecated. La medida busca eliminar una confusión histórica de la API: re.match() solo ancla al inicio de la cadena, no al final, algo que muchos desarrolladores descubren tras años usándola. Con re.prefixmatch() el nombre refleja explícitamente la semántica de coincidencia de prefijo, en línea con el principio del Zen of Python "explícito es mejor que implícito". La recomendación oficial es usar re.prefixmatch() cuando se necesite el anclaje al inicio, re.search() para buscar en cualquier posición y re.fullmatch() cuando se quiera comprobar la cadena completa. La soft-deprecación, definida en PEP 387 desde 2023, no emite avisos ni implica eliminación futura: re.match() seguirá documentada y probada, y el código que deba mantener compatibilidad con versiones anteriores puede seguir utilizándola sin cambios. El artículo incluye además una tabla comparativa con el tipo de anclaje de cada función, su versión de incorporación y los equivalentes con caracteres especiales (^, $, \A, \z). Como herramienta práctica, sugiere configurar Ruff con la regla TID251 para detectar usos de re.match() en proyectos y orientar a los desarrolladores hacia las alternativas recomendadas.