4

元々Javascriptで使用されていたRegexをASP.NET正規表現バリデーターコントロールで使用するように調整する際に問題が発生しました。

私は現在使用しています:

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

しかし、それは機能しません。(常に検証エラーを返します)

また、正規表現を使用して動画のURLからYouTube IDを抽出できるかどうか、またどのようにしたらよいか知りたいと思いました。

お時間をいただきありがとうございます。

4

1 に答える 1

6

YouTubeのURLを検証して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

于 2013-03-09T17:35:29.690 に答える