9
votes

Vérifier le format d'une chaîne

Quelle est la plus petite quantité de C # possible pour vérifier qu'une chaîne correspond à ce format # - ##### code> (1 numéro, un tiret plus 5 numéros).

Il semble que Pour moi qu'une expression régulière pourrait faire ce rapide (encore une fois, j'aimerais savoir que je savais des expressions régulières). p>

Donc, voici un exemple: p>

public bool VerifyBoxNumber (string boxNumber)
{
   // psudo code
   if (boxNumber.FormatMatch("#-#####")
      return true;
   return false;
}


0 commentaires

3 Réponses :


19
votes
private static readonly Regex boxNumberRegex = new Regex(@"^\d-\d{5}$");

public static bool VerifyBoxNumber (string boxNumber)
{
   return boxNumberRegex.IsMatch(boxNumber);
}

0 commentaires

7
votes
return Regex.IsMatch(boxNumber, @"^\d-\d{5}$");

0 commentaires

5
votes

^ \ d- \ d {5} $ serait une regex qui correspond uniquement à ce modèle.


2 commentaires

Wow, 3 Regex identiques dans les 32 secondes!


Pensez à quel point ce serait mal s'il y avait 3 expansions complètement différentes.