pbootcms网站模板|日韩1区2区|织梦模板||网站源码|日韩1区2区|jquery建站特效-html5模板网

C#正則表達式通過url從youtube和vimeo獲取視頻ID

C# regex to get video id from youtube and vimeo by url(C#正則表達式通過url從youtube和vimeo獲取視頻ID)
本文介紹了C#正則表達式通過url從youtube和vimeo獲取視頻ID的處理方法,對大家解決問題具有一定的參考價值,需要的朋友們下面隨著小編來一起學習吧!

問題描述

我正忙于創建兩個正則表達式來過濾來自 youtube 和 vimeo 視頻的 ID.我已經有了以下表達式;

I'm busy trying to create two regular expressions to filter the id from youtube and vimeo video's. I've already got the following expressions;

YouTube: (youtube.com/)(.*)v=([a-zA-Z0-9-_]+)
Vimeo: vimeo.com/([0-9]+)$

正如我在下面解釋的,有兩種類型的 url 與我已經創建的正則表達式匹配.來自 Vimeo 和 YouTube 的其他幾種類型的 url 不包含在表達式中.我最喜歡的是這一切都可以用兩種表達方式來涵蓋.一種用于所有 Vimeo 視頻,一種用于所有 youtube 視頻.我一直忙于嘗試一些不同的表達方式,但到目前為止都沒有成功.我仍在努力掌握正則表達式,所以我希望我走在正確的道路上,有人可以幫助我!如果需要更多信息,請告訴我!

As i explained below there are 2 types of urls matched by the regular expressions i already created. Several other types of urls from Vimeo and YouTube aren't coverd by the expressions. What i prefer most is that all this can be covered in two expressions. One for all Vimeo video's and one for all youtube video's. I've been busy experimenting with some different expressions, but no succes so far. I'm still trying to master regular expressions, so i hope i'm on the right way and somebody can help me out! If more information is required, please let me know!

VIMEO URL 不匹配:

VIMEO URLs NOT MATCHED:

http://vimeo.com/channels/hd#11384488
http://vimeo.com/groups/brooklynbands/videos/7906210
http://vimeo.com/staffpicks#13561592

YouTube 網址不匹配

YOUTUBE URLs NOT MATCHED

http://www.youtube.com/user/username#p/a/u/1/bpJQZm_hkTE
http://www.youtube.com/v/bpJQZm_hkTE
http://youtu.be/bpJQZm_hkTE

匹配的網址

http://www.youtube.com/watch?v=bWTyFIYPtYU&feature=popular
http://vimeo.com/834881

這個想法是用兩個正則表達式匹配上面提到的所有 url.一種用于 vimeo,一種用于 youtube.

The idea is to match all the url's mentioned above with two regular expressions. One for vimeo and one for youtube.

回答塞迪斯后更新:

這就是我現在的表情

public static readonly Regex VimeoVideoRegex = new Regex(@"vimeo.com/(?:.*#|.*/videos/)?([0-9]+)", RegexOptions.IgnoreCase | RegexOptions.Multiline);
public static readonly Regex YoutubeVideoRegex = new Regex(@"youtu(?:.be|be.com)/(?:(.*)v(/|=)|(.*/)?)([a-zA-Z0-9-_]+)", RegexOptions.IgnoreCase);

在代碼中我有

var youtubeMatch = url.match(YoutubeVideoRegex );
var vimeoMatch = url.match(VimeoVideoRegex );

var youtubeIndex = (youtubeMatch.length - 1)
var youtubeId = youtubeMatch[youtubeIndex];

如您所見,我現在需要找到 videoId 在數組中的索引,其中包含從正則表達式返回的匹配項.但我希望它只返回 id 本身,所以當 vimeo 的 youtube 決定更改那里的 url 時,我不需要修改代碼.對此有什么提示嗎?

As you can see i now need to find the index where the videoId is in the array with matches returned from the regex. But i want it to only return the id itselfs, so i don't need to modify the code when youtube of vimeo ever decide to change there urls. Any tips on this?

推薦答案

我對這些示例進行了嘗試并想出了這些:

I had a play around with the examples and came up with these:

Youtube: youtu(?:.be|be.com)/(?:.*v(?:/|=)|(?:.*/)?)([a-zA-Z0-9-_]+)
Vimeo: vimeo.com/(?:.*#|.*/videos/)?([0-9]+)

他們應該匹配所有給定的.(?: ...) 表示括號內的所有內容都不會被捕獲.所以只需要獲取id即可.

And they should match all those given. The (?: ...) means that everything inside the bracket won't be captured. So only the id should be obtained.

我自己也是一個正則表達式新手,所以如果有人進來尖叫著不聽我的,請不要感到驚訝,但希望這些會有所幫助.

I'm a bit of a regex novice myself, so don't be surprised if someone else comes in here screaming not to listen to me, but hopefully these will be of help.

我發現這個網站在制定模式方面非常有用:http://www.regexpal.com/

I find this website extremely useful in working out the patterns: http://www.regexpal.com/

像這樣獲取id:

string url = ""; //url goes here!

Match youtubeMatch = YoutubeVideoRegex.Match(url);
Match vimeoMatch = VimeoVideoRegex.Match(url);

string id = string.Empty;

if (youtubeMatch.Success)
    id = youtubeMatch.Groups[1].Value; 

if (vimeoMatch.Success)
    id = vimeoMatch.Groups[1].Value;

這適用于普通的舊 c#.net,不能保證 asp.net

That works in plain old c#.net, can't vouch for asp.net

這篇關于C#正則表達式通過url從youtube和vimeo獲取視頻ID的文章就介紹到這了,希望我們推薦的答案對大家有所幫助,也希望大家多多支持html5模板網!

【網站聲明】本站部分內容來源于互聯網,旨在幫助大家更快的解決問題,如果有圖片或者內容侵犯了您的權益,請聯系我們刪除處理,感謝您的支持!

相關文檔推薦

LINQ to SQL and Concurrency Issues(LINQ to SQL 和并發問題)
SQL Server 2005 Transaction Level and Stored Procedures(SQL Server 2005 事務級和存儲過程)
Yield return from a try/catch block(try/catch 塊的收益回報)
Should I call Parameters.Clear when reusing a SqlCommand with a transation?(重用帶有事務的 SqlCommand 時,我應該調用 Parameters.Clear 嗎?)
Does SqlTransaction need to have Dispose called?(SqlTransaction 是否需要調用 Dispose?)
Reason for System.Transactions.TransactionInDoubtException(System.Transactions.TransactionInDoubtException 的原因)
主站蜘蛛池模板: 江苏远邦专注皮带秤,高精度皮带秤,电子皮带秤研发生产 | 杜康白酒加盟_杜康酒代理_杜康酒招商加盟官网_杜康酒厂加盟总代理—杜康酒神全国运营中心 | 自动售货机_无人售货机_专业的自动售货机运营商_免费投放售货机-广州富宏主官网 | 防爆大气采样器-防爆粉尘采样器-金属粉尘及其化合物采样器-首页|盐城银河科技有限公司 | 【甲方装饰】合肥工装公司-合肥装修设计公司,专业从事安徽办公室、店面、售楼部、餐饮店、厂房装修设计服务 | 螺旋丝杆升降机-SWL蜗轮-滚珠丝杆升降机厂家-山东明泰传动机械有限公司 | LOGO设计_品牌设计_VI设计 - 特创易| 细沙回收机-尾矿干排脱水筛设备-泥石分离机-建筑垃圾分拣机厂家-青州冠诚重工机械有限公司 | BAUER减速机|ROSSI-MERSEN熔断器-APTECH调压阀-上海爱泽工业设备有限公司 | 检验科改造施工_DSA手术室净化_导管室装修_成都特殊科室建设厂家_医疗净化工程公司_四川华锐 | 气力输送_输送机械_自动化配料系统_负压吸送_制造主力军江苏高达智能装备有限公司! | PTFE接头|聚四氟乙烯螺丝|阀门|薄膜|消解罐|聚四氟乙烯球-嘉兴市方圆氟塑制品有限公司 | BAUER减速机|ROSSI-MERSEN熔断器-APTECH调压阀-上海爱泽工业设备有限公司 | ge超声波测厚仪-电动涂膜机-电动划格仪-上海洪富 | 播音主持培训-中影人教育播音主持学苑「官网」-中国艺考界的贵族学校 | 礼仪庆典公司,礼仪策划公司,庆典公司,演出公司,演艺公司,年会酒会,生日寿宴,动工仪式,开工仪式,奠基典礼,商务会议,竣工落成,乔迁揭牌,签约启动-东莞市开门红文化传媒有限公司 | [品牌官网]贵州遵义双宁口腔连锁_贵州遵义牙科医院哪家好_种植牙_牙齿矫正_原华美口腔 | 一体化净水器_一体化净水设备_一体化水处理设备-江苏旭浩鑫环保科技有限公司 | 广州市哲铭油墨涂料有限公司,水性漆生产研发基地 | 视觉检测设备_自动化检测设备_CCD视觉检测机_外观缺陷检测-瑞智光电 | 骨密度仪-骨密度测定仪-超声骨密度仪-骨龄测定仪-天津开发区圣鸿医疗器械有限公司 | 短信群发平台_群发短信软件_短信营销-讯鸽科技 | 【电子厂招聘_普工招工网_工厂招聘信息平台】-工立方打工网 | 工业rfid读写器_RFID工业读写器_工业rfid设备厂商-ANDEAWELL | 云南外加剂,云南速凝剂,云南外加剂代加工-普洱澜湄新材料科技有限公司 | 全温度恒温培养摇床-大容量-立式-远红外二氧化碳培养箱|南荣百科 | 大白菜官网,大白菜winpe,大白菜U盘装系统, u盘启动盘制作工具 | 手表腕表维修保养鉴定售后服务中心网点 - 名表维修保养 | 全自动不干胶贴标机_套标机-上海今昂贴标机生产厂家 | 专业生产动态配料系统_饲料配料系统_化肥配料系统等配料系统-郑州鑫晟重工机械有限公司 | 色谱柱-淋洗液罐-巴罗克试剂槽-巴氏吸管-5ml样品瓶-SBS液氮冻存管-上海希言科学仪器有限公司 | 济南保安公司加盟挂靠-亮剑国际安保服务集团总部-山东保安公司|济南保安培训学校 | UV-1800紫外光度计-紫外可见光度计厂家-翱艺仪器(上海)有限公司 | 电磁流量计_智能防腐防爆管道式计量表-金湖凯铭仪表有限公司 | 高压包-点火器-高压发生器-点火变压器-江苏天网 | 法兰螺母 - 不锈钢螺母制造厂家 - 万千紧固件--螺母街 | 粉末包装机,拆包机厂家,价格-上海强牛包装机械设备有限公司 | 有机肥设备生产制造厂家,BB掺混肥搅拌机、复合肥设备生产线,有机肥料全部加工设备多少钱,对辊挤压造粒机,有机肥造粒设备 -- 郑州程翔重工机械有限公司 | 手持式浮游菌采样器-全排二级生物安全柜-浙江孚夏医疗科技有限公司 | 注塑模具_塑料模具_塑胶模具_范仕达【官网】_东莞模具设计与制造加工厂家 | 广州小程序开发_APP开发公司_分销商城系统定制_小跑科技 |