diff options
author | Aaron Franke <arnfranke@yahoo.com> | 2019-12-12 01:18:44 -0500 |
---|---|---|
committer | Aaron Franke <arnfranke@yahoo.com> | 2019-12-12 02:21:16 -0500 |
commit | d09193b08ae8fdb082bee6ffd3828eb19fd45ce6 (patch) | |
tree | 32107273e33141d7d37ad90971040298c209b138 /modules/mono/glue/Managed/Files/StringExtensions.cs | |
parent | 37d164e24e22633985a6555121a992abf1b130e0 (diff) | |
download | redot-engine-d09193b08ae8fdb082bee6ffd3828eb19fd45ce6.tar.gz |
Fix string Find methods having reversed case sensitivity
Diffstat (limited to 'modules/mono/glue/Managed/Files/StringExtensions.cs')
-rw-r--r-- | modules/mono/glue/Managed/Files/StringExtensions.cs | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/modules/mono/glue/Managed/Files/StringExtensions.cs b/modules/mono/glue/Managed/Files/StringExtensions.cs index 6045c83e95..079e9912d6 100644 --- a/modules/mono/glue/Managed/Files/StringExtensions.cs +++ b/modules/mono/glue/Managed/Files/StringExtensions.cs @@ -18,7 +18,7 @@ namespace Godot int pos = 0; int slices = 1; - while ((pos = instance.Find(splitter, pos)) >= 0) + while ((pos = instance.Find(splitter, true, pos)) >= 0) { slices++; pos += splitter.Length; @@ -325,17 +325,17 @@ namespace Godot // <summary> // Find the first occurrence of a substring, return the starting position of the substring or -1 if not found. Optionally, the initial search index can be passed. // </summary> - public static int Find(this string instance, string what, int from = 0) + public static int Find(this string instance, string what, bool caseSensitive = true, int from = 0) { - return instance.IndexOf(what, StringComparison.OrdinalIgnoreCase); + return instance.IndexOf(what, from, caseSensitive ? StringComparison.Ordinal : StringComparison.OrdinalIgnoreCase); } // <summary> // Find the last occurrence of a substring, return the starting position of the substring or -1 if not found. Optionally, the initial search index can be passed. // </summary> - public static int FindLast(this string instance, string what) + public static int FindLast(this string instance, string what, bool caseSensitive = true, int from = 0) { - return instance.LastIndexOf(what, StringComparison.OrdinalIgnoreCase); + return instance.LastIndexOf(what, from, caseSensitive ? StringComparison.Ordinal : StringComparison.OrdinalIgnoreCase); } // <summary> @@ -343,7 +343,7 @@ namespace Godot // </summary> public static int FindN(this string instance, string what, int from = 0) { - return instance.IndexOf(what, StringComparison.Ordinal); + return instance.IndexOf(what, from, StringComparison.OrdinalIgnoreCase); } // <summary> @@ -928,7 +928,7 @@ namespace Godot while (true) { - int end = instance.Find(divisor, from); + int end = instance.Find(divisor, true, from); if (end < 0) end = len; if (allowEmpty || end > from) |