#python #regex #string #text-parsing
Вопрос:
У меня есть такие URL-адреса:
https://storage.cloud.google.com/test_bucket/first_test_user/0.jpg
С помощью Python мне нужно найти ведро и значение большого двоичного объекта из него, чтобы я мог назначить переменные:
bucket = 'test_bucket'
blob = 'first_test_user/0'
Я думаю, что для этого мне нужно регулярное выражение, но мне не удалось найти значения в строке. Это должно быть похоже:
bucket = find(substring between 3rd and 4th "/")
blob = find(substring between 4th "/" and ".jpg")
Был бы очень признателен вам за помощь, так как регулярное выражение действительно сбивает меня с толку, как новичка..
Ответ №1:
import re
txt = 'https://storage.cloud.google.com/test_bucket/first_test_user/0.jpg'
bucket, blob = re.findall(r"//[^/] .([^/] ).([^/] )/", txt)[0]
print(bucket, blob, sep='n')
или, без повторного:
txt = 'https://storage.cloud.google.com/test_bucket/first_test_user/0.jpg'
s = txt.split('/')
bucket, blob = s[3], s[4]
print(bucket, blob, sep='n')
С принтами:
test_bucket
first_test_user
Комментарии:
1. Большое вам спасибо!