2012-03-19 7 views
24

가능한 중복은 :
A comprehensive regex for phone number validation
Validate phone number with JavaScript미국 전화 번호의 유효성을 검사하는 정규식?

나는 미국의 형식 (123)123-1234의 전화 번호를 확인하기 위해 정규 표현식을 쓰기 위해 노력하고있어 - 사실 123-123-1234 - true

다른 모든 것은 유효하지 않습니다.

나는

^\(?([0-9]{3}\)?[-]([0-9]{3})[-]([0-9]{4})$ 

같은 등장하지만이 RIGHT되지 않는, 123) -123-1234 (123-123-1234

의 유효성을 검사합니다.

+9

을 내가 사람들이 자신의 휴대 전화에 입력 할 수 있도록 많은 우호적 생각 그들이 원하는 어떤 방식 으로든 숫자. 비 숫자를 제거하고 그 후에 남은 10 자리를 고집하면됩니다. – Pointy

+0

이것은 중복 일지 모르지만 게시물을 표시하기 전에 이전 답변에 링크하십시오. – mindtonic

답변

44

가장 쉬운 방법 모두 일치 시키려면

^\([0-9]{3}\)[0-9]{3}-[0-9]{4}$ 
및이 대부분-별도의 옵션으로 그들을 지정 : 그런데

^(\([0-9]{3}\)|[0-9]{3}-)[0-9]{3}-[0-9]{4}$ 

, 미국인 괄호 지역 번호를 넣어, 우리가 실제로 넣어 ((...|...)가)

^[0-9]{3}-[0-9]{3}-[0-9]{4}$ 

7,는 교대를 사용하는 것입니다 그 후에 공간; 예를 들어, (123)123-1234이 아니라 (123) 123-1234으로 작성하십시오. 그래서 당신은 기록 할 수 있습니다

^(\([0-9]{3}\) |[0-9]{3}-)[0-9]{3}-[0-9]{4}$ 

를 (명시 적으로 당신이 전화 번호에있을 것으로 예상되는 형식을 입증하는 것이 가장 비록.)

+0

위의 표현식은 어떻게 (000) 000-0000에 성공할 수 있습니까? – HaBo

+2

@HaBo : 왜 우리는 그것을 피하고 싶습니까? 유효한 전화 번호가 아니기 때문에 – ruakh

+4

입니다. – HaBo

관련 문제