私のurlは正規表現でURL形式をチェックするには?
/EN/33 /詳細
しかし、数33は、動的であるの形式であると私は、URLが/EN/一部と/詳細を持っているかどうかを確認する必要があります部分とその間の数字です。
私は
if url == r'^/en/(?d[0-9]+)/details':
を通じて確認してみましたしかし、私は、DjangoのURLの正規表現の構文で確認が、それは動作しません。私がどこに間違っているのか分かりますか?
私のurlは正規表現でURL形式をチェックするには?
/EN/33 /詳細
しかし、数33は、動的であるの形式であると私は、URLが/EN/一部と/詳細を持っているかどうかを確認する必要があります部分とその間の数字です。
私は
if url == r'^/en/(?d[0-9]+)/details':
を通じて確認してみましたしかし、私は、DjangoのURLの正規表現の構文で確認が、それは動作しません。私がどこに間違っているのか分かりますか?
Pythonで(?d)
のような正規表現構文がありません。
r'/en/\d+/details'
とre.match
を使用する必要があります。
if re.match(r'/en/\d+/details')
re.match
メソッドは、文字列の先頭で検索を固定するので、
/en/
場合にのみ、一致を見つける - /en/
は、文字列の先頭であり、\d+
- 1桁以上/details
- リテラル文字列/details
。あなたはまた、最後にパターンを固定する必要がある場合は、$
を追加します。
if re.match(r'/en/\d+/details$')
^
は、説明のために、あなたの正規表現から –