2010-11-03 14 views

Odpowiedz

7

chciałbym zrobić coś takiego:

private static readonly Regex _validator = 
    new Regex(@"^\d{4}-\d{5}-\d{4}-\d{3}$", RegexOptions.Compiled); 
private static bool ValidateInput(string input) 
{ 
    input = (input ?? string.Empty); 
    if (input.Length != 19) 
    { 
     return false; 
    } 
    return _validator.IsMatch(input); 
} 
+0

Czy to nie jest tylko dla liczb? To prawda, że ​​pytanie nie precyzuje dokładnie, czym jest "tekst". –

+0

@Liviu - Zwykle interpretuję ** # ** jako numeryczny symbol zastępczy. – ChaosPandion

+0

po co sprawdzać długość i oraz czy ma wiele zwrotów, czy prekompilowana operacja wyrażeń regularnych jest tak droga, że ​​nie warto jej wykonywać? Pozwoliłbym, aby to zawieszło w regex i uprościło tę metodę. Jednak podoba mi się, że używasz \ d zamiast [0-9] – dstarh