2010-04-08 15 views
5

Ejemplo URLsRegex para analizar youtube yid

http://www.youtube.com/user/Scobleizer#p/u/1/1p3vcRhsYGo 
http://www.youtube.com/watch?v=cKZDdG9FTKY&feature=channel 
http://www.youtube.com/watch?v=yZ-K7nCVnBI&playnext_from=TL&videos=osPknwzXEas&feature=sub 
http://www.youtube.com/ytscreeningroom?v=NRHVzbJVx8I 

Cualquier expresión regular que se tire de la YID correcta de todos los 4 de estos casos de uso? El primer caso es especialmente extraño.

Gracias.

+1

Mira aquí: http://stackoverflow.com/questions/tagged/youtube+regex – codaddict

+0

Por lo que puedo decir, nadie más ha manejado mi primer caso de prueba. – putorti

+0

Úselos como ejemplos y adáptese. No es * tan * difícil. – ceejayoz

Respuesta

14
(?<=v=)[a-zA-Z0-9-_]+(?=&)|(?<=[0-9]/)[^&\n]+|(?<=v=)[^&\n]+ 

Esto funciona. http://i.imgur.com/SQJW2.jpg

+0

¡SÍ! Muchas gracias! – putorti

+0

¡De nada! – webnat0

+0

Esto necesita ser modificado a: '(? <= V =) [a-zA-Z0-9 -_] + (? = &) | (? <= [0-9] /) [^ & \ n ] + | (? <= v =) [^ & \ n] + 'para permitir' _' –

6

Por lo que vale la pena, esto trabajaron en http://rubular.com/

(v=|\/)([\w-]+)(&.+)?$ 

Agarrando segundo grupo de captura para estas:

http://www.youtube.com/user/SilkRoadTheatre#p/a/u/2/6dwqZw0j_jY 
http://youtu.be/6dwqZw0j_jY 
http://www.youtube.com/watch?v=6dwqZw0j_jY&feature=youtu.be 
http://youtu.be/afa-5HQHiAs 
http://www.youtube.com/user/Scobleizer#p/u/1/1p3vcRhsYGo 
http://www.youtube.com/watch?v=cKZDdG9FTKY&feature=channel 
http://www.youtube.com/watch?v=yZ-K7nCVnBI&playnext_from=TL&videos=osPknwzXEas&feature=sub 
http://www.youtube.com/ytscreeningroom?v=NRHVzbJVx8I 

(el editor me hizo pestaña las URLs de que el código, lo siento)

+2

Mejor expresión regular que he visto. Solo tienes que buscar el grupo 2, pero es bastante limpio. Por cierto: Esto devuelve la identificación en el grupo de coincidencia 1 '[v = | \ /] ([\ w -] +) (&. +)? $' – Phrozen

Cuestiones relacionadas