3

私はpython正規表現の初心者です。誰かが次の構文を理解するのを手伝ってくれますか?

r'^(?P<pk>\d+)/results/$'

Django を学んでいるときに、そのステートメントに出くわしました。

4

1 に答える 1

4

分解された表現:

  • ^: 文字列の先頭で一致
  • (?P<pk>\d+): 1 つ以上の数字 (0-9) に一致し、それを名前付きグループとしてキャプチャしますpk
  • /results/: 文字どおりのテキストに一致/results/
  • $: 文字列の末尾に一致します。

したがって、数字で始まり、その後にテキストが続く URL パスは次のように/results/一致します。

1234/results/
42/results/
3/results/

しかし、他のものはそうではありません。

pkDjango url 構成で使用すると、数字がキャプチャされ、キーワード パラメータとして添付ビューに渡されます。

于 2013-04-12T09:38:18.840 に答える