2010-12-06 16 views
9

Wie klein ist C# möglich? Zu prüfen, ob eine Zeichenkette in dieses Format passt #-##### (1 Zahl, ein Strich und dann 5 weitere Zahlen).Format einer Zeichenkette überprüfen

Es scheint mir, dass ein regulärer Ausdruck dies schnell tun könnte (wieder wünschte ich, ich kannte reguläre Ausdrücke).

So, hier ist ein Beispiel:

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

Wenn Sie echten Code wissen, dass die oben genannte Vergleich Arbeit machen, bitte eine Antwort hinzuzufügen.

Antwort

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

public static bool VerifyBoxNumber (string boxNumber) 
{ 
    return boxNumberRegex.IsMatch(boxNumber); 
} 
7
return Regex.IsMatch(boxNumber, @"^\d-\d{5}$"); 
5

^\d-\d{5}$ wäre ein regexp, die nur dieses Muster passt.

+0

Wow, 3 identische Regexps innerhalb von 32 Sekunden! – LarsH

+0

Denke, wie schlimm es wäre, wenn es 3 völlig verschiedene Regexps gäbe. – MusiGenesis

+2

@Music: hm, hängt davon ab, ob sie alle korrekt waren oder nicht ... – LarsH

Verwandte Themen