1

我正在尝试从 url 中提取文件名。我想出了这个正则表达式

(\w+)(\.\w+)+(?!.*(\w+)(\.\w+)+)

它适用于像这样的情况

http://www.example.com/bar/baz/filename.jpeg?testing

但不是这个(它应该返回 file-name.jpeg)

http://www.example.com/bar/baz/file-name.jpeg?testing

感谢您的帮助

4

1 回答 1

2

这个正则表达式应该适合你:

([\w-]+)(\.[\w-]+)+(?!.*\/)

正则表达式演示

正则表达式详细信息:

  • ([\w-]+): 匹配 1+ 个单词或 - 字符
  • (\.[\w-]+)+: 点后 1 个或多个部分
  • (?!.*\/):负前瞻断言我们/在这场比赛之后没有
于 2021-05-04T21:19:41.140 回答