Уведомления

Группа в Telegram: @pythonsu

#1 Окт. 31, 2016 16:57:00

oreol
Зарегистрирован: 2016-07-03
Сообщения: 19
Репутация: +  0  -
Профиль   Отправить e-mail  

Вывод данных после идентификатора

Суть задачи: Вводится строка разной длины и нужно в промежутке между двумя маркерами вытащить значения.
К примеру:
s1 = 'fklfkljfklsdlfIDsdjklfj24l&jksdfhsdf'
s2 = 'fnjksdfkljlIDfklsdfklsdf8t4jdkl&klsdjfklkfl'
s3 = 'mjsdklfksdlfksdlIDkjgkhdfgjkhdf2893rjkfnjfnjksefhis&fisdfklsdnfjkfy'
Собственно выделенное нужно вытащить. Маркер начала ID, маркер конца нужных нам данных &

Офлайн

#2 Окт. 31, 2016 17:12:18

ayb
Зарегистрирован: 2014-04-01
Сообщения: 297
Репутация: +  24  -
Профиль   Отправить e-mail  

Вывод данных после идентификатора

 >>> import re
>>> s = "mjsdklfksdlfksdlIDkjgkhdfgjkhdf2893rjkfnjfnjksefhis&fisdfklsdnfjkfy"
>>> re.findall(r"ID(.*)\&", s)
['kjgkhdfgjkhdf2893rjkfnjfnjksefhis']

Офлайн

#3 Окт. 31, 2016 17:13:19

Vigi
От: Курья, Алтай
Зарегистрирован: 2015-02-07
Сообщения: 144
Репутация: +  8  -
Профиль   Отправить e-mail  

Вывод данных после идентификатора

тупо в лоб для этих примеров:

 print(s1[s1.find('D')+1:s1.find('&')])

Офлайн

#4 Окт. 31, 2016 17:20:33

oreol
Зарегистрирован: 2016-07-03
Сообщения: 19
Репутация: +  0  -
Профиль   Отправить e-mail  

Вывод данных после идентификатора

ayb
>>> import re
>>> s = “mjsdklfksdlfksdlIDkjgkhdfgjkhdf2893rjkfnjfnjksefhis&fisdfklsdnfjkfy”
>>> re.findall(r“ID(.*)\&”, s)
спасибо. А что делать если у меня в строке встречается более одного &, но самый ближайший к ID является концом нужных данных?
К примеру:
s = 'sdpokfliodufiosdfIDiosiofus34ioufsoisd&ioufiodsufo&oiuiodsjfklnsdf&gtt

Отредактировано oreol (Окт. 31, 2016 17:29:16)

Офлайн

#5 Окт. 31, 2016 21:57:12

JOHN_16
От: Россия, Петропавловск-Камчатск
Зарегистрирован: 2010-03-22
Сообщения: 3292
Репутация: +  221  -
Профиль   Отправить e-mail  

Вывод данных после идентификатора

 re.findall(r"ID(.*?)\&", s)



_________________________________________________________________________________
полезный блог о python john16blog.blogspot.com

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version