Ho dovuto fare qualcosa di simile ma con un metodo StartsWith. Ecco una semplice soluzione derivata da @Serge - appTranslator.
Ecco un metodo di estensione:
public static bool StartsWith(this string str, string value, CultureInfo culture, CompareOptions options)
{
if (str.Length >= value.Length)
return string.Compare(str.Substring(0, value.Length), value, culture, options) == 0;
else
return false;
}
E per i fanatici di una fodera;)
public static bool StartsWith(this string str, string value, CultureInfo culture, CompareOptions options)
{
return str.Length >= value.Length && string.Compare(str.Substring(0, value.Length), value, culture, options) == 0;
}
Avvii incensivi di accento e incensivi di maiuscole Con questo si può chiamare
value.ToString().StartsWith(str, CultureInfo.InvariantCulture, CompareOptions.IgnoreNonSpace | CompareOptions.IgnoreCase)
string.Normalize
?