2013-03-09 59 views
3

我在調整最初與Javascript一起使用的正則表達式以便與ASP.NET正則表達式驗證器控件配合使用時出現問題。用於youtube視頻的ASP/C#正則表達式

我目前使用:

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

,但它不工作。 (總是返回驗證錯誤)

我也想知道我是否可以使用正則表達式從視頻URL中提取youtube ID,以及如何?

謝謝你的時間。

+0

歡迎#1,請與您的特定更新你的標題問題。你的問題根本不清楚。您應該閱讀[常見問題]和[問] – 2013-03-09 16:57:05

回答

5

正則表達式驗證YouTube網址,並提取VIDEO_ID:

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

轉義正則表達式:

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

測試在這裏:http://fiddle.re/w1nn6

+0

感謝您的回覆! Altrough它適用於每一個正常的YT鏈接,它也匹配這樣的: 貓://////dog.youtube.com/pony?cow = Vb1pdvvoVoQ – user1 2013-03-09 17:59:43

+0

哇,這很有趣:)我剛剛修復你的初始正則表達式第一。現在更新一些驗證 – 2013-03-09 18:13:11

+0

您先生,真棒!再次感謝。 – user1 2013-03-09 23:07:50

相關問題