2013-07-30 4 views
5

ok Mam następujące ciągiSprawdź, czy ciąg jest prawidłowy wzór RegEx VB.NET

"^[a-z]*$" 

i

"a-z" 

teraz to, co chcę z tych dwóch ciągów jest, aby sprawdzić, czy są one prawidłowe ciągi wyrażeń regularnych w VB.NET. Naprawdę nie mam pojęcia, w jaki sposób mogę to zrobić ... ale próbowałem coś poniżej

Try 
    Dim regex As Regex = New Regex("a-z") 
    Return "valid regex" 
Catch ex As Exception 
Return "not valid regex" 
End Try 

ale moje rozwiązanie powyżej nie wydaje się naprawdę dobrze. Czy istnieje o wiele lepsze rozwiązanie?

Odpowiedz

7

Nie, nie ma innego rozwiązania (można oczywiście ponownie zaimplementować analizator składni regex, ale byłoby to podatne na błędy działanie).

Wolałabym przechwycić specyfikę ArgumentException, którą konstruktor Regex wyrzuca, jeśli wyrażenie regularne jest nieprawidłowe inne niż tylko Exception.