2013-10-20 4 views
1

숫자가 포함되지 않은 URL의 패턴과 일치 시키려고합니다. 예를 들어정규식 문자열에 숫자가 포함되지 않음

:

/painters/1-joe-bob/dashboard 

나는 단지 다음되는 URL을 일치시킬 것 :

/painters 
/painters/string 

를 URL이 /painters/1-something 다음 일치가 없을 것 포함합니다.

가 나는 행운으로 다음과 같은 노력했습니다 : /painters/ 또는

/contractors/은 알려 주시기 바랍니다에

\/{1}(painters|contractors)\/?[^0-9][a-z]* 

이 여전히 일치합니다.

+0

'/'를 사용하여'()'를'()'로 묶으십시오. –

+0

이것은 화가 및 계약자 (예 : 화가/1- 조 - 봅/대시 보드)와 여전히 일치합니다. 전체 표현이 일치하는지 확인하는 것이 가능합니까? – Brian

+0

화가 또는 계약자 뒤에/1 (또는 임의의 숫자)가 오는 경우 일치하지 않을 것입니다. – Brian

답변

3

이 정규식을 시도 할 수 있습니다. 두 번째 슬래시 뒤에 숫자가 오는 경우 부정적 미리보기를 사용하여 일치하지 않습니다.

^\/(painters|contractors)\/(?![0-9]) 

문자열의 아무 곳에 나 숫자를 넣지 않으려면 처음에 음수 미리보기를 사용할 수 있습니다.

^(?!.*[0-9])\/(painters|contractors)\/ 

이 구성은 숫자가 포함 된 문자열을 허용하지 않습니다.

+0

고맙습니다. 이것은 (?!. * [0-9]) \/(화가 | 계약자)의 약간의 변경으로 만 작동했습니다. – Brian

관련 문제