gpt4 book ai didi

正则表达式获取最后三个文件夹

转载 作者:行者123 更新时间:2023-12-01 09:51:44 25 4
gpt4 key购买 nike

无论路径中有多少个文件夹,都尝试获取路径中的最后三个文件夹。

作为进一步的复合因素,仅当第一个文件夹是特定字符串时才需要匹配。

我有这个,但它使用 5 个组并且最多只支持 5 个文件夹。

/(a)/?([^/]+)?/?([^/]+)?/?([^/]+)/?([^/]+)/?([^/]+)/$

需要得到

/a/
$1 = a
$2 =
$3 =

/a/b/
$1 = a
$2 = b
$3 =

/a/b/c/
$1 = a
$2 = b
$3 = c

/a/b/c/d/
$1 = b
$2 = c
$3 = d

/a/b/c/d/e/
$1 = c
$2 = d
$3 = e

/b/c/d/e/
Not a Match because first folder is not "a"

提前致谢。

最佳答案

你可以使用这个正则表达式:

/a.*/(\w*?)/(\w*?)/(\w*?)/|/(a)/(?:(\w+?)/)?(\w+?)?

Working demo

enter image description here

MATCH 1
4. [1-2] `a`
MATCH 2
4. [5-6] `a`
5. [7-8] `b`
MATCH 3
4. [11-12] `a`
5. [13-14] `b`
6. [15-16] `c`
MATCH 4
1. [21-22] `b`
2. [23-24] `c`
3. [25-26] `d`
MATCH 5
1. [33-34] `c`
2. [35-36] `d`
3. [37-38] `e`

我认为应该有更好的正则表达式来执行此操作,但您可以使用它。

关于正则表达式获取最后三个文件夹,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25558953/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com