re.search z \ s lub '\ n' nie znajduje multiliny, którą próbuję wyszukać.re.search Wiele linii Python
Porcja Źródło:
Date/Time:
2013-08-27 17:05:36
----- BEGIN SEARCH -----
GENERAL DATA:
NAME: AB12
SECTOR:
999,999
CONTROLLED BY: Player
ALLIANCE: Aliance
ONLINE: 1 seconds ago
SIZE: Large
HOMEWORLD: NO
APPROVAL RATING: 100%
PRODUCTION RATE: 100%
RESOURCE DATA:
POWER: 0/0
BUILDINGS: 0/20
ORE: 80,000/80,000
CRYSTAL: 80,000/80,000
POPULATION: 40,000/40,000
BUILDING DATA:
N/A
UNIT DATA:
WYVERN(S): 100
----- END SEARCH -----
Patrząc na to w Notepad ++ widzę "Dane budynku: (LF)"
pełny kod
lines = open('scan.txt','r').readlines()
for a in lines:
if re.search(r"\A\d", a):
digits = a
if re.search(r"2013", digits):
date.append(digits[:19])
count +=1
elif re.search(r",", digits):
clean = digits.rstrip()
sector = clean.split(',')
x.append(sector[0])
y.append(sector[1])
elif re.search(r"CONTROLLED BY:", a):
player.append(a[15:].rstrip())
elif re.search(r"ALLIANCE:", a):
alliance.append(a[10:].rstrip())
elif re.search(r"SIZE:", a):
size.append(a[6:].rstrip())
elif re.findall('BUILDING DATA:\sN/A', a, re.M):
def_grid = ''
print "Didn't find it"
defense.append(def_grid)
defense_count +=1
elif re.search(r"DEFENSE GRID", a):
def_grid = a[16:].rstrip()
print "defense found"
defense_count +=1
Ale ja nie mam nic wrócił .
muszę umieścić w pustej spacer po „obrona GRID” nie istnieje po „Dane budynku:”
wiem, że czegoś brakuje i Próbowałem czytania na re.search ale Nie jestem w stanie znaleźć żadnych dokładnych przykładów wyjaśniających działanie multilinii.
A [sscce] (http://sscce.org/) byłoby miło. Trudno zrozumieć, o co dokładnie chodzi. –
Myślę, że zapomniałeś "zaimportować ponownie" i ten przykład nie działa po wyjęciu z pudełka. Data nie jest zdefiniowana ... –