2010-11-30 31 views

Répondre

5

Une solution rapide, qui font usage de la jonglerie de type phps

$number = (int) $filename; 
+1

+1 Très belle prise. –

+0

+1 Un astucieux :). – Yeroon

+0

cool une doublure. – nik

4
preg_match('/^\d+/' ,'22214-HAV.jpg', $matches); 
var_dump($matches[0]); 

Observations:

  1. Cela ne correspond exactement à partir des numéros depuis le début. Toute position peut être autorisée en supprimant ^.
  2. Ceci correspondra à n'importe quelle séquence de chiffres et non à des nombres réels. Les numéros peuvent être restreints en utilisant ([1-9]\d*|0) au lieu de \d+.
  3. Si aucune correspondance n'est trouvée, $matches[0] sera null et non une chaîne vide.

Pour en savoir plus:

  1. http://www.php.net/manual/en/function.preg-match.php
  2. http://www.regular-expressions.info/reference.html
1

Vous pouvez utiliser exploser pour cette

//for '-' 
      list($reqval)=explode('-', $value); 
    //for space 
      list($reqval)=explode(' ', $value); 


     echo $reqval