diff options
Diffstat (limited to 'Emby.Naming/StringExtensions.cs')
| -rw-r--r-- | Emby.Naming/StringExtensions.cs | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/Emby.Naming/StringExtensions.cs b/Emby.Naming/StringExtensions.cs new file mode 100644 index 000000000..5598ddb4c --- /dev/null +++ b/Emby.Naming/StringExtensions.cs @@ -0,0 +1,31 @@ +using System; +using System.Collections.Generic; +using System.Text; + +namespace Emby.Naming +{ + internal static class StringExtensions + { + public static string Replace(this string str, string oldValue, string newValue, StringComparison comparison) + { + var sb = new StringBuilder(); + + var previousIndex = 0; + var index = str.IndexOf(oldValue, comparison); + + while (index != -1) + { + sb.Append(str.Substring(previousIndex, index - previousIndex)); + sb.Append(newValue); + index += oldValue.Length; + + previousIndex = index; + index = str.IndexOf(oldValue, index, comparison); + } + + sb.Append(str.Substring(previousIndex)); + + return sb.ToString(); + } + } +} |
