2017-04-08 19 views
-1

PHP에서 프랑스 우편 번호 확인을위한 정규식이 필요합니다.프랑스 정규식 우편 번호

I 같은 정규식있다 : 01000 캡처 99 또는도 2A 또는 2B
또는
^[0-9]{5}$ 01 캡처

/^(([\d]{2})|(2[abAB]))*(([\d]{2})|(2[abAB]))$/ 99,000
또는
^(0[1-9]|[1-8]\d|9[0-5])\d{3}$에 현실에서 95,999

에 01000 캡처 I
01 ~ 95, 01000 ~ 95000 또는 971 ~ 978 또는 984 ~ 989 또는 2A 또는 2a 또는 2B를 캡처 할 수 있습니다. 2b

아이디어가 있으십니까?
덕분에 많은

+0

만 허용됩니다 95000,하지만 95999 및 2A/2A와 2B/2B가 작동하지 않습니다. – Buck

+0

매우 감사합니다. 감사합니다. D – Buck

답변

2

방법에 대해 :

(?:0[1-9]|[13-8][0-9]|2[ab1-9]|9[0-5])(?:[0-9]{3})?|9[78][1-9](?:[0-9]{2})? 

가 살펴 유무 : 귀하의 사양을 바탕으로 https://fr.wikipedia.org/wiki/Code_postal_en_France

+0

5 개의 우편 번호 만 일치합니다. 죄송합니다./ – Buck

+0

@Buck :'86000'이 존재하며, 그것은 Vienne의 Poitiers 현입니다. – Toto

+0

@Buck : 편집을 참조하십시오. 도시 번호는 선택 사항이므로 부서 또는 도시 우편 번호와 일치합니다. – Toto

1

을 나는 생각한다

^(?:(?:(?:0[1-9]|[1-8]\d|9[0-4])(?:\d{3})?)|97[1-8]|98[4-9]|‌​‌​2[abAB])$ 

귀하의 요구 사항을 충족합니다. 귀하의 정규식 범위와 공간에 문제가있었습니다.

데모 : https://regex101.com/r/wFnEDj/2/ 너무 가까이