Feedback

C# - StartsWidth/EndsWith mit mehreren Suchparametern

Veröffentlicht von am 30.05.2013
(2 Bewertungen)
Diese Methoden sind als Erweiterungen für den System.String-Typ implementiert. Sie entsprechen der Grundfunktionalität der StartsWith und EndsWith-Methoden. Nur das man bei meinen mehrere Vergleichswerte übergeben kann.

Das kann man beispielsweise einsetzen um einen Dateinamen auf bestimmte Typen zu überprüfen.

Hinweis: Ich habe zur besseren Eingliederung ins System auch Überladungen mit einem CultureInfo bzw. einem StringComparison hinzugefügt.

Hinweis: Die Abgleich-Strings können als Array oder durch Komma abgetrennt übergeben werden. Jeweils als letzten Parameter.

Nähere Informationen sind in der XML-Dokumentation enthalten.
GFU-Schulungen  [Anzeige]

Visual Studio Team Foundation Server 2017/2015 (TFS) für Projektmitglieder - Kompakt

Nach Teilnahme an dieser Schulung sind Ihnen die Grundlagen von ALM geläufig. Sie planen und steuern Projekte effizient mit dem Visual Studio Team Foundation Server.

Angular mit ASP.NET Core für .NET-Entwickler

.NET ist Ihnen vertraut, als Entwickler verfügen Sie über einschlägige Kenntnisse. In diesem Kurs lernen Sie nun, Angular in .NET-Umgebungen einzusetzen. Sie verstehen das Konzept von Angular und integrieren das clientseitige JS-Framework sicher in.NET-Anwendungen.

/// <summary>
/// Bestimmt ob das Ende dieser Zeichenfolgeninstanz mit einer der angegebenen Zeichenfolge übereinstimmt.
/// </summary>
/// <param name="s">Die Zeichenfolgeninstanz, deren Ende vergleichen werden soll.</param>
/// <param name="a">Die zu vergleichenden Zeichenfolgen.</param>
/// <returns><c>True</c>, wenn das Ende der Zeichenfolgeninstanz mit einer der Vergleichszeichenfolgen übereinstimmt, andernfalls <c>False</c>.</returns>
public static bool EndsWith(this string s, params string[] a)
{
    foreach (string i in a)
        if (s.EndsWith(i))
            return true;
    return false;
}
/// <summary>
/// Bestimmt ob das Ende dieser Zeichenfolgeninstanz mit einer der angegebenen Zeichenfolge, unter Berücksichtigung der angegebenen Vergleichseinstellung, übereinstimmt.
/// </summary>
/// <param name="s">Die Zeichenfolgeninstanz, deren Ende vergleichen werden soll.</param>
/// <param name="c">Spezielle Einstellungen für den Vergleich.</param>
/// <param name="a">Die zu vergleichenden Zeichenfolgen.</param>
/// <returns><c>True</c>, wenn das Ende der Zeichenfolgeninstanz mit einer der Vergleichszeichenfolgen, unter berücksichtigungen der Vergleichseinstellungen, übereinstimmt, andernfalls <c>False</c>.</returns>
public static bool EndsWith(this string s, StringComparison c, params string[] a)
{
    foreach (string i in a)
        if (s.EndsWith(i, c))
            return true;
    return false;
}
/// <summary>
/// Bestimmt ob das Ende dieser Zeichenfolgeninstanz mit einer der angegebenen Zeichenfolge, unter Berücksichtigung der angegebenen Kultur, übereinstimmt.
/// </summary>
/// <param name="s">Die Zeichenfolgeninstanz, deren Ende vergleichen werden soll.</param>
/// <param name="ignoreCase"><c>True</c> wenn die Groß- bzw. Kleinschreibung ignoriert werden soll, andernfalls <c>False</c>.</param>
/// <param name="culture">Die Kultur, unter der der Vergleich stattfinden soll.</param>
/// <param name="a">Die zu vergleichenden Zeichenfolgen.</param>
/// <returns><c>True</c>, wenn das Ende der Zeichenfolgeninstanz mit einer der Vergleichszeichenfolgen, unter berücksichtigungen der angegebenen Kultur, übereinstimmt, andernfalls <c>False</c>.</returns>
public static bool EndsWith(this string s, bool ignoreCase, CultureInfo culture, params string[] a)
{
    foreach (string i in a)
        if (s.EndsWith(i, ignoreCase, culture))
            return true;
    return false;
}

/// <summary>
/// Bestimmt ob der Anfang dieser Zeichenfolgeninstanz mit einer der angegebenen Zeichenfolge übereinstimmt.
/// </summary>
/// <param name="s">Die Zeichenfolgeninstanz, deren Anfang vergleichen werden soll.</param>
/// <param name="a">Die zu vergleichenden Zeichenfolgen.</param>
/// <returns><c>True</c>, wenn der Anfang der Zeichenfolgeninstanz mit einer der Vergleichszeichenfolgen übereinstimmt, andernfalls <c>False</c>.</returns>
public static bool StartsWith(this string s, params string[] a)
{
    foreach (string i in a)
        if (s.StartsWith(i))
            return true;
    return false;
}
/// <summary>
/// Bestimmt ob der Anfang dieser Zeichenfolgeninstanz mit einer der angegebenen Zeichenfolge, unter Berücksichtigung der angegebenen Vergleichseinstellung, übereinstimmt.
/// </summary>
/// <param name="s">Die Zeichenfolgeninstanz, deren Anfang vergleichen werden soll.</param>
/// <param name="c">Spezielle Einstellungen für den Vergleich.</param>
/// <param name="a">Die zu vergleichenden Zeichenfolgen.</param>
/// <returns><c>True</c>, wenn der Anfang der Zeichenfolgeninstanz mit einer der Vergleichszeichenfolgen, unter berücksichtigungen der Vergleichseinstellungen, übereinstimmt, andernfalls <c>False</c>.</returns>
public static bool StartsWith(this string s, StringComparison c, params string[] a)
{
    foreach (string i in a)
        if (s.StartsWith(i, c))
            return true;
    return false;
}
/// <summary>
/// Bestimmt ob der Anfang dieser Zeichenfolgeninstanz mit einer der angegebenen Zeichenfolge, unter Berücksichtigung der angegebenen Kultur, übereinstimmt.
/// </summary>
/// <param name="s">Die Zeichenfolgeninstanz, deren Anfang vergleichen werden soll.</param>
/// <param name="ignoreCase"></param>
/// <param name="culture">Die Kultur, unter der der Vergleich stattfinden soll.</param>
/// <param name="a">Die zu vergleichenden Zeichenfolgen.</param>
/// <returns><c>True</c>, wenn der Anfang der Zeichenfolgeninstanz mit einer der Vergleichszeichenfolgen, unter berücksichtigungen der angegebenen Kultur, übereinstimmt, andernfalls <c>False</c>.</returns>
public static bool StartsWith(this string s, bool ignoreCase, CultureInfo culture, params string[] a)
{
    foreach (string i in a)
        if (s.StartsWith(i, ignoreCase, culture))
            return true;
    return false;
}

Kommentare zum Snippet

 

Logge dich ein, um hier zu kommentieren!