使用Regex提取文件夹名称

时间:2015-04-21 08:02:32

标签: python regex

文件夹(\ one \ two \ three \ four)可以命名为任何名称。

我所知道的是\ KNOWN将始终出现在我正在查看的文件夹中。我想要做的是找到一种方法来提取\三个名称。您可以在下面看到我的尝试,但这只会提取\四。谢谢!

my_directory = r'e:\\one\\two\\three\\four\\KNOWN\\data'
myFolder = re.search(r'([a-zA-Z_]+)\\KNOWN', my_directory).group(1)

2 个答案:

答案 0 :(得分:0)

使用此正则表达式:

([a-zA-Z]+)(?=\\([a-zA-Z_]+)\\KNOWN)

Demo

它使用前瞻来检查\ folder \ KNOWN。

答案 1 :(得分:0)

这可能会让您three要求群组与\之间存在一些非[^\\]字符(KNOWN):

my_directory = r'e:\\one\\two\\three\\four\\KNOWN\\data'
myFolder = re.search(r'([a-zA-Z_]+)\\[^\\]+\\KNOWN', my_directory).group(1)

(不完全确定\部分中的[^...]应该在Python中进行转义,但我确定应该这样做