从url(C#或JavaScript)解析Twitter列表ID /用户名

时间:2013-07-09 08:50:44

标签: c# javascript twitter

我有Twitter列表网址,例如https://twitter.com/{list-owner-screen-name}/{list-slug}

从该网址获取list-owner-screen-namelist-slug的最佳方式是什么?

我显然可以使用regexp来解析它,但我不确定这里的有效正则表达式是什么(一般来说这是一种特殊的解决方案)。我也怀疑有更好的方法可以做到这一点(也许某种api / lib可以帮助我)。

解析/转换的位置无关紧要。我可以在服务器端(C#)或客户端(JavaScript)上执行此操作

感谢。

2 个答案:

答案 0 :(得分:1)

为什么要使用RegEx,如果您始终拥有该格式的URL?您可以将最后一部分作为子字符串,然后将其拆分并获取每个部分(这是使用C#):

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

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

答案 1 :(得分: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'