, то бишь найти и вывести на stdout все айпишники имеющиеся в этом файле… Айпишники соответственно находятся между IP= и двоетичием .
, то бишь найти и вывести на stdout все айпишники имеющиеся в этом файле… Айпишники соответственно находятся между IP= и двоетичием .
.... import re .... you_file_as_string=open("1","r").read() for ip_string in re.finditer(r"IP=([\.\d]+):",you_file_as_string): ....
>>> import re >>> >>> s = """ ... abc IP=127.0.0.1: abc IP=127.0.0.2: abc IP=127.0.0.3: abc ... abc IP=127.0.0.4: abc IP=127.0.0.5: abc IP=127.0.0.6: abc ... abc IP=127.0.0.7: abc IP=127.0.0.8: abc IP=127.0.0.9: abc ... """ >>> >>> lst = re.findall(r'IP=([^:]+)', s) >>> print(lst) ['127.0.0.1', '127.0.0.2', '127.0.0.3', '127.0.0.4', '127.0.0.5', '127.0.0.6', '127.0.0.7', '127.0.0.8', '127.0.0.9'] >>>
MarkHammer (из лички)
Подскажите пожалуйста - если текст будет :как мне из этого текста выбрать пары cellxxx IP=xxx все значения пар заканчиваются двоеточием… и вывести это в формате :>>> s = """ ... cell1: abc IP=127.0.0.1: cell10: abc IP=127.0.0.2: cell32: abc IP=127.0.0.3: abc ... cell1078: abc IP=127.0.0.4: cell287: abc IP=127.0.0.5: cell333: abc IP=127.0.0.6: abc ... cell345: abc IP=127.0.0.7: cell889: abc IP=127.0.0.8: cell457: abc IP=127.0.0.9: abc ... """ >>>
cell1 IP=127.0.0.1
cell10 IP=127.0.0.2
…
cell457 IP=127.0.0.9
>>> import re >>> >>> s = """ ... cell1: abc IP=127.0.0.1: cell10: abc IP=127.0.0.2: cell32: abc IP=127.0.0.3: abc ... cell1078: abc IP=127.0.0.4: cell287: abc IP=127.0.0.5: cell333: abc IP=127.0.0.6: abc ... cell345: abc IP=127.0.0.7: cell889: abc IP=127.0.0.8: cell457: abc IP=127.0.0.9: abc ... """ >>> >>> lst = re.findall(r'cell(\d+):.+?IP=([^:]+)', s) >>> numip_lst = [(int(i[0]), i[1]) for i in lst] >>> #print(numip_lst) ... >>> for num, ip in numip_lst: ... print('cell{0} IP={1}'.format(num, ip)) ... cell1 IP=127.0.0.1 cell10 IP=127.0.0.2 cell32 IP=127.0.0.3 cell1078 IP=127.0.0.4 cell287 IP=127.0.0.5 cell333 IP=127.0.0.6 cell345 IP=127.0.0.7 cell889 IP=127.0.0.8 cell457 IP=127.0.0.9 >>>