RegEx:捕获操作参数


RegEx: Capture action params

我正在编写一个正则表达式来捕获URL REST操作的参数。我写了以下内容:

(?:'/folder)?'/?([a-zA-Z0-9]+)+

它对/folder/one/two/three非常有效,结果我得到了一个两个三个件夹,但我不想捕获它。我希望得到一个空的结果。

在这种情况下,我怎么能否定这个词呢?

这里你需要使用PCRE动词(*SKIP)(*F)

(?:^(?:'/folder'/?)|^.*$)(*SKIP)(*F)|([a-zA-Z0-9]+)

演示

这是因为您正在捕获文件夹

尝试

'/folder'/?([a-zA-Z0-9]+)+
(?:'/folder)?'/?|([a-zA-Z0-9]+)+

试试这个。请参阅演示。

http://regex101.com/r/zR2tR4/10