我有一个问题关于遍历目录树并返回包含单词“test”的所有目录。我的问题是当我用这段代码运行时,我得到每个包含“测试”的目录。所以一些目录可能被命名为“systest”或“testplan”或“tester”。我不想要这些目录。我知道我应该使用正则表达式或类似的东西,但我似乎无法绕过它。谢谢您的帮助。使用python的os.walk搜索特定的目录名称?
UPDATE:
我想通另一种方式与正则表达式来做到这一点,但在Windows
testPattern = re.compile(".*\\\\test\\\.*\.java")
for root,dirnames,filenames in os.walk(rootPath):
for file in filenames:
path = root+"\\"+file
m = testPattern.match(path)
由于其有点靠不住的,因为文件分隔符的!
’返回所有包含单词目录”测试后来“我得到每个包含”测试“的目录。”哪里有问题? –
我认为OP希望匹配'r'^ test $''的目录不匹配'r'test'' –
'匹配'r'^ test $''可能更简单地写成'=='test' ',特别是对于那些不能将自己的想法包装在正则表达式中的OP,但我不认为这就是他的意思,我认为他的意思是在dirname.split()中用'test'。 – abarnert