2014-03-01 5 views
0

저는 Tag라는 모델을 가지고 있으며 데이터베이스에 이러한 모델이 많이 있습니다. 다음과 같은 방법으로 URL을 통해 페이지에 액세스하고 싶습니다.Django - URL 정규식 패턴

id가 1, 3, 4 인 태그를 보려면 URL이 134로 끝나야합니다. 정규 표현식 패턴 /.../134/과 같은 URL에서 [1,3,4] 목록을 가져 오려면 사용 하시겠습니까? 사전에

감사

답변

0

고정 너비 태그 식별자 (예 : 001003004)가 필요합니다. 그렇지 않으면 모호합니다. 이것을 사용하는 경우 \d+을 캡처 한 다음보기에서 다음과 같이 할 수 있습니다.

>>> import re 
>>> tag_string = "001003004" 
>>> regex = re.compile("\d{3}") 
>>> tag_list = map(int, regex.findall(tag_string)) 
[1, 3, 4] 
0

당신이 각 번호를 반환해야) 단지 정규식 모두 A. 경우) URL의 연속 자릿수 B. 임의이며, 함께 할 불가능/어려울 수 귀하의 코드를 개별적으로. 당신은 단지 (다음 나중에 코드에서 구문 분석) 숫자의 문자열을 잡아해야하는 경우

, 당신은이를 사용할 수 있습니다 /(\d+)/ (탈출 /의가 구분 기호로 사용하는 경우)

/(\d)(\d)?(\d)?(\d)?(\d)?(\d)?(\d)?(\d)?(\d)?(\d)?/ 
: 그럼 당신은 단지 $

는 등 $ 1, $ 2, $ 3, 각 숫자를 반환하는 정규 표현식을해야하는 경우 (1)에 대한 몇 가지 문자열 조작을 실행할 수 있습니다, 나는 유일한 해결책이 같은 다소 세련되지 못한 것이 될 것입니다 생각

... URL에 최대 10 개의 태그를 지원합니다.