No, you cannot modify the array while you enumerate it using ForEach , and the strings are immutable, so there is no function that will modify the instance in place.
You can do the following:
for (int i=0; i<buzoneslist.Length; i++) buzoneslist[i] = buzoneslist[i].Replace(",", "");
Or:
buzoneslist = buzoneslist.Select(t => t.Replace(",", "")).ToArray();
I suppose if you really wanted to use lambda, you could write an extension method:
public static class Extensions { public static void ChangeEach<T>(this T[] array, Func<T,T> mutator) { for (int i=0; i<array.Length; i++) { array[i] = mutator(array[i]); } } }
And then:
buzoneslist.ChangeEach(t => t.Replace(",", ""));
source share