簡體   English   中英

在Django中使用Python正則表達式

[英]Using Python Regular Expression in Django

我有一個網址:

http://www.example.com/org/companyA

我希望能夠使用正則表達式將CompanyA傳遞給視圖。

這就是我所擁有的:

(r'^org/?P<company_name>\w+/$',"orgman.views.orgman")

它不匹配。

理想情況下,所有看起來像example.com/org/X的URL都會將x傳遞給視圖。

提前致謝!

您需要將組名稱括在括號中。 命名組的語法是(?P<name>regex) ,而不是?P<name>regex 此外,如果您不想要一個尾部斜杠,則應將其設為可選。

測試與Python解釋器匹配的正則表達式很容易,例如:

>>> import re
>>> re.match(r'^org/?P<company_name>\w+/$', 'org/companyA')
>>> re.match(r'^org/(?P<company_name>\w+)/?$', 'org/companyA')
<_sre.SRE_Match object at 0x10049c378>
>>> re.match(r'^org/(?P<company_name>\w+)/?$', 'org/companyA').groupdict()
{'company_name': 'companyA'}

你的正則表達式是無效的。 應該看起來像

r'^org/(?P<company_name>\w+)/$'

它應該看起來更像r'^org/(?P<company_name>\\w+)'

>>> r = re.compile(r'^org/(?P<company_name>\w+)')
>>> r.match('org/companyA').groups()
('companyA',)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM