Соответствие персонажа в Python - PullRequest
0 голосов
/ 29 марта 2019

Я начинающий программист и не могу этого понять.Нужно вызвать .txt файл, содержащий данные и соответствующий символ (*) и вернуть значение.

.txt файл содержит следующие данные:

Zone : Server1
       00:88:41:oc*
       12:11:ee:41
Zone : Server2
       1e:41:eq:re
       oc:41:31:26
Zone : Server3
       00:88:41:ae*
       1e:19:ee:46

Так как есть (*) в конце он должен вернуть имя "Зона" .. ожидаемый результат:

Server1
Server3

Что я пытаюсь:

import re
s = open('./myfile.txt','r').read()
fp = open('./output.txt', 'w')
for zone in s.split("zone"):
    m = re.search(r"\w+\*", zone)
    if m:
        fp.write(zone.splitlines()[0].strip(" :"))

1 Ответ

0 голосов
/ 29 марта 2019

Это один подход.

Ex:

import re

s = """Zone : Server1
       00:88:41:oc*
       12:11:ee:41
Zone : Server2
       1e:41:eq:re
       oc:41:31:26
Zone : Server3
       00:88:41:ae*
       1e:19:ee:46"""

for zone in s.split("Zone"):             #Separate Each zone
    m = re.search(r"\w+\*", zone)        #Check for *
    if m:
        print(zone.splitlines()[0].strip(" :"))   #Get first line. 

Выход:

Server1
Server3
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...