obteniendo solo el primer número de String en Python

Actualmente estoy enfrentando el problema de que tengo una cadena de la que quiero extraer solo el primer número. Mi primer paso fue extraer los números de la cadena.

Headline = "redirectDetail('27184','2 -New-York-Explorer-Pass')" print (re.findall('\d+', headline )) Output is ['27184', '2'] 

En este caso me devolvieron dos números pero solo quiero tener el primero “27184”.

Por lo tanto, he intentado con el siguiente código:

  print (re.findall('/^[^\d]*(\d+)/', headline )) 

Pero no funciona:

  Output:[] 

¿Pueden ustedes ayudarme? Cualquier comentario es apreciado

Simplemente use re.search que deja de coincidir una vez que encuentra una coincidencia.

 re.search(r'\d+', headline).group() 

o

Debe eliminar las barras diagonales presentes en su expresión regular.

 re.findall(r'^\D*(\d+)', headline) 

Solución sin expresiones regulares (no necesariamente mejor):

 import string no_digits = string.printable[10:] headline = "redirectDetail('27184','2 -New-York-Explorer-Pass')" trans = str.maketrans(no_digits, " "*len(no_digits)) print(headline.translate(trans).split()[0]) >>> 27184 
 re.search('[0-9]+', headline).group()