2011-01-04 3 views
3

В настоящее время, ранее отвечал вопрос оставил меня с этим регулярным выражением в находке?:Заменить Youtube URL в Yahoo Pipes с/х от часов у =

^.+(\?|&)v=([a-zA-Z0-9]+).*$ 

С этим, как заменить

hxxp://www.youtube.com/v/$1 

I хотите конвертировать

hxxp://www.youtube.com/?watch="YoutubeID" 

в

Youtube.com/v/youtubeID. 

Нынешнее регулярное выражение не срабатывает при этом обстоятельстве.

http://www.youtube.com/watch?v=67-YcLickUA 

Как возвращает

... v = 67, вместо полной идентификации видео.

ответ

1
use strict; 
use warnings; 

my $string = 'http://www.youtube.com/watch?v=67-YcLickUA'; 

$string =~ s(.+watch\?v=([0-9a-zA-Z-]+))(Youtube.com/v/$1); 

print "$string\n"; 

Это очень простая замена, но так как я не знаю, контекст и т.д. Вы хотите использовать его в нем, кажется, достаточно хорошо на некоторое время. Если вам нужно что-то более сложное, сообщите мне.

+0

Отлично, я благодарю вас. – TheBetterJORT

+0

@TheBetterJORT В случае, если этот ответ содержит то, что вы искали, возможно, вы захотите рассмотреть его как принятое (нажав на отметку под меткой ответа) :) – canavanin

+0

Я использовал комбо из обоих регулярных выражений. Yahoo Pipe очень wierd. Еще раз спасибо. – TheBetterJORT