正在从url(C#或JavaScript)分析Twitter列表id/用户名

本文关键字:列表 Twitter 分析 id 用户 JavaScript url | 更新日期: 2023-09-27 18:21:41

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

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

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

这种解析/转换将在哪里发生并不重要。我可以在服务器端(C#)或客户端(JavaScript)上执行此操作

谢谢。

正在从url(C#或JavaScript)分析Twitter列表id/用户名

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'

如果URL总是采用这种格式,为什么要使用RegEx?您可以将最后一部分作为子字符串,然后将其拆分并获得每个部分(这是使用C#):

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