murdoc
Дек. 13, 2011 16:33:52
Есть имя файла к примеру вот аткое bla_bla_12/12/2011_blablabla_blabla.squashfs
Каким способом мне перебрать каждый символ в строке и вывести только в данном примере дату ?
Заранее спасибо!
s0rg
Дек. 13, 2011 16:46:31
вариант 1:
import re
test = "bla_bla_12/12/2011_blablabla_blabla.squashfs"
date = re.match("\d{2}/\d{2}/\d{4}", test)
print date.group(0)
'12/12/2011'
вариант 2:
test = "bla_bla_12/12/2011_blablabla_blabla.squashfs"
date = test.split('_')[2]
print date
'12/12/2011'
murdoc
Дек. 13, 2011 16:49:41
Спасиб за овтет, а если у меня вместо даты будут стоять цифры скажем вот так bla_bla_v1b1248_blabla, причем нужно имена вот эта часть v1b1248
s0rg
Дек. 13, 2011 16:50:44
тогда берите второй вариант если формат bla_bla_(то, что нужно)_blabla не меняется.
murdoc
Дек. 13, 2011 22:59:36
огромное спасибо, работает корректно :)
murdoc
Дек. 14, 2011 17:26:04
Очередной вопрос,
ситуация, с помощью вышесказанных манипуляцый у меня в список записываеться все что есть в папке, как мне теперь выкинуть из писка все что не являеться файлом а папкой?
s0rg
Дек. 14, 2011 18:01:36
что именно находится в списке?
только вырезанные части, или полные имена файлов/папок?
murdoc
Дек. 14, 2011 19:18:27
на данный момент в списке находяться полные имена файлов и папок, потом уже буду вырезать из имени файла нужную часть
s0rg
Дек. 14, 2011 19:33:40
http://docs.python.org/library/os.path.htmlos.path.isdir(path)
Return True if path is an existing directory. This follows symbolic links, so both islink() and isdir() can be true for the same path.
murdoc
Дек. 15, 2011 13:06:27
можно глянуть на примере применеие?
На данном этапе у меня все это выглядит так:
from filecmp import *
import os
import re
pathName = raw_input("Enter paltform: ")
if pathName == "HR20":
dir = "/tftpboot/HR20"
elif pathName == "HR24":
dir = "/tftpboot/HR24"
files = os.listdir(dir)
как мне теперь из списка files выкинуть дериктории?