javascript - 如果 URL 最后一个斜杠后面存在字符串,则捕获该值;如果没有,则捕获最后一个斜杠之前的值(javascript)

标签 javascript substring

我希望能够捕获用户 Facebook 个人资料的用户名,并且我知道当 URL 如下所示时,这非常容易做到:

https://www.facebook.com/123456

我所要做的就是:

var str = "foo/bar/test.html";
var n = str.lastIndexOf('/');
var result = str.substring(n + 1);
// Result == '123456'

但是如果 URL 如下所示:

https://www.facebook.com/123456/

上面的 JS 返回一个空字符串。那么我该如何:

  • 获取最后一个斜杠 (/) 后面的值,除非该值为空
  • 如果值为空,则获取最后一个斜杠之前的值

最佳答案

var result = str.split("/").filter(Boolean).pop();

关于javascript - 如果 URL 最后一个斜杠后面存在字符串,则捕获该值;如果没有,则捕获最后一个斜杠之前的值(javascript),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38845081/

相关文章:

javascript - 使用arcgis api for javascript绘制多边形,如何定位我画的多​​边形,我想得到一个坐标

javascript - Excel自定义函数返回数组公式

javascript - 将对象传递给 jquery 函数

mysql - 如何为 MySQL 中的每一行获取可变大小的子字符串?

javascript - jQuery 选择器作为属性存储在命名空间中

javascript - 更改单击下拉菜单时打开的图像

regex - 在 R 中提取字符串的一部分

c++ - Symbian C++ - 描述符上的子字符串操作

java - 是否有一种技巧/算法可以让我们在 O(n) 时间内找到所有可能的子串

string - 如何检查字符串是否包含 Bash 中的子字符串