2012-10-03 1 views
1

레일 경로에 대한 정규 표현식 작성에별로 좋지 않습니다.숫자 (월)에 대한 Rails 경로 제약 조건입니다. 선행 제로

나는에서 번호를 갖고 싶어 1 ~ 12 유효 (이 때문에, 기본적으로, 달의 수) 선도 있도록, 그러나 나는 또한, 09 유효한뿐만 아니라에 01에서 번호를 가지고 싶습니다 단일 번호에 대해 0이 유효했습니다.

누군가 나를 도와 줄 수 있습니까?

미리 감사드립니다.

답변

3

Here's 좋은 출발점.

이 같은 뭔가를 찾고 :

^0?[1-9]|1[0-2]$ 

^$ 경기 시작과 끝에 당신은 a09b처럼 말도 안되는 일치가 없습니다. |는 OR 문처럼이며, 0?[1-9]옵션0 앞에 문자 1-9을 말한다 그것의 왼쪽에 있으므로, 가장 낮은 우선 순위를 가지고 있으며, 그것의 오른쪽에 1[12]을 말한다 앞에 문자 12 1.

+0

당신은 누락을이어야한다 10-0에 대한'1 [012]의 수와 $' – link664

+0

하지만 1-9 선행 제로 여전히 유효하므로 그 점도 확인하십시오. 1 ~ 9 "^ 0 * [1-9] $"입니다. 체크 아웃 www.rubular.com –

+0

설명 주셔서 대단히 감사합니다! 굉장히 유용하다! 매력처럼 작동 – Dmitri

2

이 정규식 시도가 필요 : /^(0?[1-9]|1[012])$/

+0

OK) 잘 작동하는 것 같습니다! 고맙습니다!) – Dmitri