2013-12-04 3 views
0

Я здесь новый. Просто проблема с регулярным выражением Python. У меня есть строки, какPython regex to string string

http://sample.com/test/id549268848?at=5 
http://sample.com/test/id621311331?at=5 
... 

Не удается найти правильный путь, чтобы получить только после того, как номер идентификатора и раздеть все после. Вызов из цикла как этот

self.splitAppId(rec[4]) 

Где прн [4] URL из списка

Сама функция:

def splitAppId(self, url): 
     idMatch = re.search('/id(.*)?$', url) 
     return idMatch 

ответ

0

вы делаете неправильно. Должно быть так:

def splitAppId(self, url): 
     idMatch = re.search(r'/id([^/]+)\?[^/]*$', url) 
     return idMatch.group(1) 
+1

Спасибо, ваш код работает для меня! – tellieno

0

Если URL является формат, то

>>> "http://sample.com/test/id549268848?at=5".split('id')[-1].split('?')[0] 
'549268848'