2012-02-13 2 views
1
sub numeric_p { 
    local($data) = @_; 
    if ($data =~ /^-?\d*\.?\d*(e\d|e-\d)?\d*$/) { 
     $true; 
    } else { 
     $false; 
    }; 
} 

어떻게이 코드를 PHP으로 번역 할 수 있습니까? 번역 할 수없는 유일한 부분은 if으로 시작하는 3 번째 줄의 부분입니다.Perl에서 PHP로 변환

어떻게하면됩니까?

+0

귀하의 요구에 적합하지 않을 수 있지만 [is_numeric] (http://php.net/manual/en/function.is-numeric.php) 방법을 확인하십시오. – CBusBus

+1

성능이 중요한 경우 Perl을 사용하십시오. 그냥 일반적인 조언. – AlfredoVR

답변

5

$data이 다음 정규식과 일치하면 테스트입니다. 단지 PHP preg_match()에 호출된다 :

// In Perl 
if ($data =~ /^-?\d*\.?\d*(e\d|e-\d)?\d*$/) 

// In PHP: 
if (preg_match('/^-?\d*\.?\d*(e\d|e-\d)?\d*$/', $data)) 
+0

당신이 빠졌습니다) a) PHP 코드 –

+0

@ScottHarwell Thanks, edited. –