Я следую регулярному выражению, которому нужно соответствовать, используя re.match
.Сначала мне нужно сопоставить «susa» и игнорировать все, что угодно, вплоть до символа «@» (не считая его), и захватывать все после него.Однако, когда я пытаюсь получить вывод, используя re.search
, он не совпадает.Почему я не получаю желаемый результат?re.match
действительно соответствует выходу?(Я не могу проверить, так как он дает только место в памяти).Спасибо.
import re
output = 'susa ssh://user@internal.website.ide.company.uk/du33/abo33/ohs231/stk/projects/project1/'
url_match = re.match("\s*susa\s+[^(/.+?(?=@)/)]+([^ ]+)", output)
Result = re.search("\s*susa\s+[^(/.+?(?=@)/)]+([^ ]+)", output)
if Result:
print Result.groups()
In [29]: runfile('/home/user/Desktop/python_practise/match_urls.py', wdir='/home/user/Desktop/python_practise')
('//user@internal.website.ide.company.uk/du33/abo33/ohs231/stk/projects/project1/',)