Met System.Linq in uw gebruik kunt u dit doen:
"INEEDTOGETAHAIRCUT".ToCharArray().Any(c => c=='O' || c=='E' || c=='G' || c=='T');
Of schrijf een nieuwe uitbreidingsmethode om een char-array als argument te accepteren.
Om een "reeks" van tekens in een willekeurige volgorde te hebben, kunt u dit doen:
public static class MyExtensions
{
public static bool ContainsAnySequenceOf(this String str, List charArray)
{
foreach (char c in charArray)
{
if (str.ToCharArray().Any(x => x == c))
{
charArray.Remove(c);
return str.Substring(str.IndexOf(c), Math.Min(str.Length - str.IndexOf(c), charArray.Count)).ContainsAnySequenceOf(charArray);
}
}
return false;
}
}
Noem het dan zo:
"INEEDTOGETAHAIRCUT".ContainsAnySequenceOf(new List {'O','E','G','T'});