Feedback

C# - Enthält ein String Groß- oder Kleinbuchstaben?

Veröffentlicht von am 09.06.2010
(0 Bewertungen)
Mit diesen beiden Extension Methods kann festgestellt werden, ob ein String mindestens einen Großbuchstaben oder einen Kleinbuchstaben enthält.
GFU-Schulungen  [Anzeige]

C# Komplett

Sie kennen sich in objektorientierter Programmierung aus. Sie schreiben C++ oder Java? Und nun stehen Sie vor der Aufgabe, in C# Anwendungen zu erstellen. Das C# Komplett-Seminar verschafft Ihnen umfassende Programmierkenntnisse in dieser Sprache. Nach der Schulung entwickeln Sie selbständig Anwendungen mit C#. Sie kennen die Datentypen und Klassenbibliotheken der objektorientierten Programmiersprache C#. Der Komplettkurs setzt bei den Grundlagen von C# ein. Sie arbeiten mit Variablen und konvertieren Typen. Multithreading, Delegates, Generics sind nach dem Seminar für Sie kein Geheimnis mehr.

VB.NET Einführung

Die Schulung zeigt Ihnen, wie Sie einfache, benutzerorientierte Programme, die auf Datenbanken zugreifen, in VB.NET eigenständig entwickeln. 

public static class ExtensionMethods
{
    public static bool ContainsUpperSizeLetter(this string s)
    {
        return new System.Text.RegularExpressions.Regex("[A-Z]").IsMatch(s);
    }

    public static bool ContainsLowerSizeLetter(this string s)
    {
        return new System.Text.RegularExpressions.Regex("[a-z]").IsMatch(s);
    }
}

3 Kommentare zum Snippet

RoSi schrieb am 08.07.2010:
Da es hier anscheinend nicht um die schnellste Methode der Auswertung geht, sondern übersichtliche Zeile schlage ich vor:
return s!=null && s.Where(p => p >= 'A' && p <= 'Z').Count() > 0;

bzw. entsprechend angepasst für LowerCase
return s!=null && s.Where(p => p >= 'a' && p <= 'z').Count() > 0;
.
Braucht bei mir nur die Hälfte der Zeit der Regex-Methode.
RoSi schrieb am 08.07.2010:
Alternativ - wenn es nur um ´Groß-/Kleinschreibung geht

public static bool ContainsUpperSizeLetter(this string s)
{
return s!=s.ToLower();
}

public static bool ContainsLowerSizeLetter(this string s)
{
return s!=s.ToUpper();
}

Allerdings dauert die Ausführung ebenfalls länger als die Where-Methode.
WolfgangKluge schrieb am 03.08.2010:
Hi, ich würde ja eher Any() vorschlagen, damit sollte nach dem ersten gefundenen Zeichen Schluss mit der Suche nach den richtigen Zeichen sein...

return s!=null && s.Any(p => p >= 'A' && p <= 'Z');
 

Logge dich ein, um hier zu kommentieren!