正则表达式从URL获取文件夹名称

时间:2016-11-10 20:15:27

标签: .net regex nintex-workflow

是否可以从URL获取文件夹名称?

例如,

https://inside.nov.com/wh/pc/testSourceLib/Folder Z/SubFolder Z1/Copy files from one Document Library to another using Nintex Workflow _ My Learnings.pdf

其中

  • https://inside.nov.com/wh/pc/是网址
  • testSourceLib是图书馆名称
  • Folder Z/Subfolder z1是文件夹名称

我需要从上面的网址中提取/Folder Z/Subfolder z1

我尝试了([^\/]*)$,它为我提供了文件名Copy files from one Document Library to another using Nintex Workflow _ My Learnings.pdf

1 个答案:

答案 0 :(得分:1)

您可以在 Extract 选项中使用基于前瞻性的正则表达式:

/[^/]+/[^/]+(?=/[^/]*$)

请参阅regex demo

enter image description here

模式详细信息

  • [^/]+ - 除/ ...
  • 以外的1个或多个字符
  • (?=/[^/]*$) - 后跟/,除/[^/]*)以外的零个或多个字符,然后是字符串结尾($)。该构造是一个正向前瞻,它是一个零宽度断言,不消耗文本(不将其放入返回的匹配),需要在字符串中当前位置右侧的一些文本。

要稍微缩短模式,可以将/[^/]+子模式包装为非捕获组并对其应用限制量词:

(?:/[^/]+){2}(?=/[^/]*$)

请参阅another demo