2013-07-09 45 views
1

我的Twitter列表網址,例如https://twitter.com/{list-owner-screen-name}/{list-slug}解析Twitter的列表ID從URL(C#或JavaScript)/用戶名

什麼是從那個URL list-owner-screen-namelist-slug的最佳方式?

我明顯可以使用正則表達式來解析它,但我不確定什麼是有效的正則表達式在這裏(一般來說這是一種臨時解決方案)。我也懷疑有更好的方法來做到這一點(也許某種API/lib可以幫助我)。

這個解析/轉換髮生在哪裏並不重要。我可以在服務器端(C#)或客戶端(JavaScript)上執行此操作。

謝謝。

回答

0

的Twitter用戶名的格式爲[a-zA-Z0-9_]{1,15},所以你在JavaScript中,你可以這樣做:

var url = 'https://twitter.com/StackExchange/stack-overflow-employees'; 
if(! /\/([a-z0-9_]{1,15})\/(.+)$/i.exec(url)){ 
    throw new Error('Invalid list URL'); 
} 
var userName = RegExp.$1, // = 'StackExchange' 
    listSlug = RegExp.$2; // = 'stack-overflow-employees' 
1

爲什麼要使用正則表達式,如果你總是使用該格式的URL?您可以將最後一部分作爲子字符串,然後拆分並獲取每個部分(這是使用C#):

var userAndListName = "https://twitter.com/{list-owner-screen-name}/{list-slug}" 
         .Substring(20) 
         .Split('/'); 

var user = userAndListName.First(); 
var listName = userAndListName.Last();