2013-03-09 2 views
3

У меня возникают проблемы с настройкой моего регулярного выражения, первоначально используемого с Javascript, для использования с ASP.NET Регулятором регулярных выражений.ASP/C# regex для youtube video

настоящее время я использую:

(?:https?://)?(?:www\\.)?(?:youtu\\.be/|youtube\\.com(?:/embed/|/v/|.*v=))([\\w-]{10,12})($|&).* 

, но он не работает. (Всегда возвращает ошибку проверки)

Я также хотел знать, могу ли я использовать регулярное выражение для извлечения идентификатора youtube из URL-адреса видео и как?

Спасибо за ваше время.

+0

Добро пожаловать Stackoverflow, пожалуйста, обновите ваш заголовок с вашей конкретной проблема. Ваш вопрос не совсем понятен. Вы должны прочитать [FAQ] и [ask] –

ответ

5

RegEx для проверки достоверности URL YouTube и извлекая Video_id:

^(?:https?\:\/\/)?(?:www\.)?(?:youtu\.be\/|youtube\.com\/(?:embed\/|v\/|watch\?v\=))([\w-]{10,12})(?:$|\&|\?\#).* 

Сбежал RegEx:

^(?:https?\\:\\/\\/)?(?:www\\.)?(?:youtu\\.be\\/|youtube\\.com\\/(?:embed\\/|v\\/|watch\\?v\\=))([\\w-]{10,12})(?:$|\\&|\\?\\#).* 

Тест здесь: http://fiddle.re/w1nn6

+0

Спасибо за ваш ответ! Алтун работает на каждом нормальном YT-соединении, он также соответствует примерно так: cat: //////dog.youtube.com/pony? Cow = Vb1pdvvoVoQ – user1

+0

ничего себе, это было смешно :) Я только что отремонтировал ваш начальный регулярное выражение. Обновлено теперь с некоторой валидацией –

+0

Вы, сэр, потрясающие! Еще раз спасибо. – user1