django book および django Web サイトで\d+
は、URL からデータを取得するために使用されます。構文は決して説明されません。また、URL のその部分の文字数を指定できるという事実以外に、D や () の重要性もありません。これらの変数はどのように、正確に、どのような順序で関数に渡されますか? ホー、正確に、構文は機能しますか? どのように実装しますか?説明を忘れずに()
3 に答える
それは正規表現です。\d
は数字を+
意味し、「1 つ以上」を意味します。括弧で囲むと、それがキャプチャ グループであることを指定します。各キャプチャ グループの内容は、正規表現内に表示される順序でハンドラー関数に渡されます。
Python の正規表現ライブラリはre
.
(\d+)/(\d+)
別の例として、スラッシュで区切られた 1 つ以上の数字の 2 つの異なるセットをキャプチャし、それらを 2 つの引数 (最初の数字の文字列を最初の引数として、2 番目の数字の文字列を 2 番目の引数として渡す)より複雑な正規表現が考えられます。引数) をハンドラ関数に渡します。
詳細な情報がなければ、それは正規表現 (または略して「正規表現」) だと思います。これらは、多くのプログラミング言語で使用される一般的な文字列処理メカニズムです。Python では、re
モジュールで処理されます。それらについて詳しく知りたい場合は、http://www.regular-expressions.info/のような一般的な正規表現のチュートリアルを確認してください。
これは、URI から数値 ID を取得するために使用される数字の正規表現を指します。
\d+
Hi-REST 規則では、GET/POST/... の URI をリソースの ID で終了する必要があります。この場合、数値 ID ( 1 つ以上の数字)を探します)
括弧で囲むのは、Django が正規表現を解析するのを支援する規則です。
例: