Я новачок у Python і хотів би знати, як побудувати шаблон регулярних виразів для відповідності URL
У Java є наступний код, і він працює. Мені потрібно мати аналогічний в Python
Java:
URI uri = new URI("http://localhost:8080")
Matcher m = Pattern.compile("(.*)" + "/client" + "/([0-9]+)")
.matcher(uri.getPath());
Може хтось допоможе мені з еквівалентним regex в Python
Відповіді:
1 для відповіді № 1Ось еквівалент у Python 2.7:
import re
from urlparse import urlparse
url = urlparse("http://localhost:8080")
match = re.match(r"(.*)/client/([0-9]+)", url.path)
РЕДАГУВАТИ
Ось як ви використовуєте матч для отримання окремих компонентів (просто вгадайте, що ви хочете зробити далі):
if match:
prefix = match.group(1)
client_id = int(match.group(2))
3 для відповіді № 2
Чому б не користуватися urlparse
? Батареї включені :-).
>>> import urlparse
>>> urlparse.urlparse("http://localhost:8080")
ParseResult(scheme="http", netloc="localhost:8080", path="", params="", query="", fragment="")