2015-09-26 4 views
4

Я новичок в python, и я пытаюсь вырезать кусок строки в другой строке на python. Я посмотрел на другие подобные вопросы, но я не мог найти ответ.Найти строку с регулярным выражением в python

У меня есть переменная, которая содержит список доменов, которые домены выглядеть следующим образом:

http://92.230.38.21/ios/Channel767/Hotbird.mp3 http://92.230.38.21/ios/Channel9798/Coldbird.mp3

....

Я хочу имя mp3 файла (в данном примере Hotbird , Coldbird и т. Д.)

Я знаю, что должен сделать это с помощью re.findall(), но я понятия не имею о регулярных выражениях, которые мне нужно использовать.

Любая идея?

Update: Вот часть я использовал:

for final in match2: 
     netname=re.findall('\W+\//\W+\/\W+\/\W+\/\W+', final) 
     print final 
     print netname 

Который не работает. Тогда я попытался сделать это тот, который только перерезать IP-адрес (92.230.28.21), но не имя:

for final in match2: 
     netname=re.findall('\d+\.\d+\.\d+\.\d+', final) 
     print final 
+1

Можете ли вы показать какой-либо код, который вы уже пробовали? – idjaw

ответ

5

Вы можете просто использовать str.split():

>>> urls = ["http://92.230.38.21/ios/Channel767/Hotbird.mp3", "http://92.230.38.21/ios/Channel9798/Coldbird.mp3"] 
>>> for url in urls: 
...  print(url.split("/")[-1].split(".")[0]) 
... 
Hotbird 
Coldbird 

А вот пример regex- подход, основанный на:

>>> import re 
>>> 
>>> pattern = re.compile(r"/(\w+)\.mp3$") 
>>> for url in urls: 
...  print(pattern.search(url).group(1)) 
... 
Hotbird 
Coldbird 

, где мы используем группу захвата (\w+) захватить mp3 файл, состоящий из одного или нескольких aplhanumeric символов, которые следуют за точкой, mp3 в конце URL.

+0

Работал, как ожидалось. Благодаря ! –

+0

@SamaAzari рад, что это помогло. См. Http://stackoverflow.com/help/someone-answers. Кроме того, просмотрите свои предыдущие вопросы и посмотрите, есть ли какие-либо ответы, заслуживающие того, чтобы их приняли. Благодаря! – alecxe

0

Как насчет?

([^ /] * mp3) $

Я думаю, что может работать

В основном это говорит ...

матча с конца строки, начните с mp3, затем матч все возвращается к первой косой чертой.

Думайте, что он будет хорошо работать.

Смежные вопросы