Javascript Regex从字符串中提取id适用于3/5个案例

时间:2017-05-18 18:10:31

标签: javascript regex

我有一个正则表达式从facebook网址中提取id。 URL可以是以下任何形式。我还列出了正则表达式的结果。

subcats

这些都很好,我想要的。以下是不是我想要的2个:

https://graph.facebook.com/1234567890 >>> 1234567890
https://graph.facebook.com/1234567890:0 >>> 1234567890:0
https://graph.facebook.com/&id=1234567890 >>> 1234567890

这是我的正则表达式: https://graph.facebook.com/1234567890/picture >>> picture https://graph.facebook.com/1234567890/ >>> 1234567890/

从最后2个,我想要的是1234567890.没有斜杠,也没有非数字字符。

  1. 我知道我的正则表达式正在继续到字符串的末尾,因此在开始斜杠和字符串结尾之间的匹配是“#&#39; picture&#39;”,但我试图解决这个问题无济于事。< / LI>
  2. 尾随斜线似乎也与此有关,但同样,在不破坏原有工作3的情况下,我无法解决这两个问题。

1 个答案:

答案 0 :(得分:1)

如何使用简单的正则表达式匹配网址中可能包含:的任何数字。这项工作的假设是URL不包含除必须提取的ID之外的任何其他ID

\d+(?::\d+)?
  • \d+允许一个或多个号码
  • :\d+表示:后跟一个或多个数字
  • (?::\d+)?表示此非捕获组可能存在也可能不存在

Regex101 Demo