Amati
@Amati

Как вырезать часть строки?

Есть строка
background-image: url("/upload/resize_cache/iblock/377/825_475_2/koe.jpeg");

Как из неё можно вырезать вот эту часть
/upload/resize_cache/iblock/377/825_475_2/koe.jpeg

Оператором strip() желательно)
  • Вопрос задан
  • 98 просмотров
Решения вопроса 1
@dmshar
Можно, конечно и срезами и регулярными выражениями и вообще перебирать циклом посимвольно. Но как мне кажется- всегда надо искать простейший путь решения - в данном случае в один вызов функции:
inpt='background-image: url("/upload/resize_cache/iblock/377/825_475_2/koe.jpeg");'
outpt=inpt.split('"')[1]
outpt

Результат:
'/upload/resize_cache/iblock/377/825_475_2/koe.jpeg'
Ответ написан
Пригласить эксперта
Ответы на вопрос 3
Здравствуйте. Самое простое это вырезать нужный текст с помощью среза.
you_var = 'background-image: url("/upload/resize_cache/iblock/377/825_475_2/koe.jpeg");'[23:-3]

И как было сказано выше, можно с помощью регулярных выражений:
import re
x = re.split(r'"', 'background-image: url("/upload/resize_cache/iblock/377/825_475_2/koe.jpeg");')
a = result[0] + result[2]  # background-image: url();
b = result[1]  # /upload/resize_cache/iblock/377/825_475_2/koe.jpeg

И с помощью метода stripe(), хотя это не очень удобно:
res = 'background-image: url("/upload/resize_cache/iblock/377/825_475_2/koe.jpeg");'.strip('background-image: url("')
res = res.strip('");')
Ответ написан
ZIK1337
@ZIK1337
Либо регуляркой, либо срезом (если длины строки и подстрок одинаковые всегда)
Либо replace вообще
Ответ написан
Amati
@Amati Автор вопроса
В итоге сделал чрез 2 стрипа, правый и левый. Да, не в одну строку, но так мне удобней)) Всем спасибо!!!
src = 'background-image: url("/upload/resize_cache/iblock/377/825_475_2/koe.jpeg");'
src = src.rstrip('\");')
src = src.lstrip('background-image: url("')
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы