using System; using System.Collections.Generic; namespace LibSearchBox.Utilities { public static class StringPlus { public static string ReplaceMultiple(this string str, char[] find, char[] replace) { for (int i = 0; i < find.Length; i++) { str = str.Replace( find[i], i < replace.Length ? replace[i] : replace[replace.Length - 1] ); } return str; } // From https://stackoverflow.com/a/2641383/1460422 public static IEnumerable AllIndexesOf(this string str, string value) { if (String.IsNullOrEmpty(value)) throw new ArgumentException("Error: The string to find may not be empty.", nameof(value)); List indexes = new List(); for (int index = 0; ; index += value.Length) { index = str.IndexOf(value, index); if (index == -1) break; yield return index; } } } }