2013-08-06 3 views
-3

전체 문장에서 전화 번호를 검색하고 싶습니다. 그것은 (122) 221-2172 또는 122-221-2172 또는 (122) -221-2172와 같은 패턴을 가진 임의의 숫자 일 수 있습니다. PHP의 도움을 받아서 문장의 어느 부분에 그 숫자가 존재하는지 알 수 없거나 substr을 사용할 수 있습니다.번호 패턴 검색

+2

정규 표현식을 배우십시오. 친구. – sashkello

+0

전화 번호의 패턴을 표시 할 수 있습니까? –

+0

전화 번호가 123-123-1234 또는 (123) 123-1234 또는 (123) -123-1234 또는 123 123 1234 일 수 있으므로 문제가됩니다. 무엇이든 – Soumya

답변

0

regular expressions을 사용하면 문제를 해결할 수 있습니다. 아니 100 PHP 구문에 대한 %,하지만 난 그것과 같이 보일 것 상상 :

$pattern = '/^\(?\d{3}\)?-\d{3}-\d{4}/'; 

^ 말한다는
\((
\(?는 0 또는 1 (
\d{x} 정확히 x 번호라고 말할 탈출 "로 시작"

Using Regular Expressions with PHP

0
$text = 'foofoo 122-221-2172 barbar 122 2212172 foofoo '; 
$text .= ' 122 221 2172 barbar 1222212172 foofoo 122-221-2172'; 

$matches = array(); 

// returns all results in array $matches 
preg_match_all('/[0-9]{3}[\-][0-9]{6}|[0-9]{3}[\s][0-9]{6}|[0-9]{3}[\s][0-9]{3}[\s][0-9]{4}|[0-9]{9}|[0-9]{3}[\-][0-9]{3}[\-][0-9]{4}/', $text, $matches); 
$matches = $matches[0]; 

var_dump($matches);