2011-08-24 2 views
1

urls.py 파일에서이 정규 표현식을 사용하면 add_or_remove 매개 변수의 마지막 문자 만 표시됩니다. URL이 내보기에 부딪치지 만 추가하려면 d, 삭제하려면 만 표시됩니다. 내가 도대체 ​​뭘 잘못하고있는 겁니까?URL 정규식 도움말

r'(?P<add_or_remove>[add|remove])/' 

감사

+0

저는 장고에 익숙하지 않지만 대괄호 []는 정규 표현식에서 문자 집합을 나타냅니다. 그래서 [add] = a 또는 d 또는 d. 대괄호 대신 괄호()를 사용하십시오. –

답변

1

변경 대괄호 () 괄호를 반올림합니다. 현재 상황이 발생

+0

그런데 이러한 종류의 표현을 디버깅 할 때 regexr.com이 도움이 될 수 있습니다. – bcoughlan

1

... 문자 add|re 등의 일치 [...] 일치 세트에서 어떤 문자 때문이다. 그냥 (일반적으로 충분하다 (?P<>...)에서 팔 보호구 사용) 팔 보호구을 제거 :

r'(?P<add_or_remove>add|remove)/' 
0

나는 파이썬에 익숙하지 않아요 인정한다. 그러나 을 캡처하려고 시도하는 경우 또는 을 제거하면을 제거하면 구문이 잘못됩니다. 즉, 괄호는 문자 집합에 대한 표기법이므로 대괄호를 사용하지 않아도됩니다.

r'(?P<add_or_remove>add|remove)/'