Python - expresión regular RegEx para coincidencias con (*)

 
Vista:
sin imagen de perfil
Val: 3
Ha disminuido su posición en 20 puestos en Python (en relación al último mes)
Gráfica de Python

expresión regular RegEx para coincidencias con (*)

Publicado por Oscar (2 intervenciones) el 16/09/2019 12:19:51
hola, como puedo encontrar la coincidencia (*) en una str donde * puede ser cualquier numero
ejm:

palabra = "hola (2)"
palabra2 = "hola(45)"

necesito que me devuelva esta coincidencia para después borrarla de la cadena
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de joel
Val: 3.475
Oro
Ha mantenido su posición en Python (en relación al último mes)
Gráfica de Python

expresión regular RegEx para coincidencias con (*)

Publicado por joel (901 intervenciones) el 16/09/2019 12:31:19
Hola Oscar, exactamente que quieres que te devuelva? no me queda claro
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 3
Ha disminuido su posición en 20 puestos en Python (en relación al último mes)
Gráfica de Python

expresión regular RegEx para coincidencias con (*)

Publicado por Oscar (2 intervenciones) el 16/09/2019 21:38:03
lo que quiero es recorrer un de directorio donde tengo como 300 archivos nombrados de la siguiente manera :
aaa 1.mp4
aaa 4(2).mp4
bbb 3.mp4
etc

quiero copiar el numero y ponerlo delante para que mi explorador de archivos los ordene, y para eso tengo el código siguiente :

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
import os
import re
 
 
numeros = []
numeroFinal =""
ruta = "C:\\archivo\\"
 
for a in os.listdir(ruta):# recorremos todos los archivos en la ruta 
 
    x = a.replace(".mp4",".flv")#reemplazamos .mp4 por flv
 
 
    numeros = re.findall("\d",x)#nos devuelve todos los números en la cadena 
 
    numeroFinal = "".join(numeros)#convierto la lista en un str
 
 
    os.rename(ruta + a ,ruta + numeroFinal + x)#reemplazamos el nombre por numero final + x

con la expresión regular re.findall("\d",x) me devuelve los números, el problema es que hay mas números aparte de la numeración de cada vídeo, como el 4 de el mp4, por eso es que x = a.replace(".mp4",".flv") remplazo mp4 por flv para después volverlo a .mp4, en los nombre s de los archivos también hay repetidos, por eso windows le agrega un (2), necesito eliminar esto para que solo me tome la numeración que yo quiero y después ponerle otra ves el (*) . no se si me explique bien pero arriba dejo el código.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de joel
Val: 3.475
Oro
Ha mantenido su posición en Python (en relación al último mes)
Gráfica de Python

expresión regular RegEx para coincidencias con (*)

Publicado por joel (901 intervenciones) el 17/09/2019 08:24:33
Oscar, para que quede claro...

tu tienes esto en una carpeta:
aaa 1.mp4
aaa 4(2).mp4
bbb 3.mp4

y quieres que te quede así?
1-aaa.mp4
4-aaa(2).mp4
3-bbb.mp4
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar