feat: Adding RegexUtils shims for RegexOptions

This commit is contained in:
Chris Cameron
2018-12-19 07:50:23 -05:00
parent f208ec521b
commit a372d97868

View File

@@ -44,7 +44,7 @@ namespace ICD.Common.Utils
/// <returns></returns> /// <returns></returns>
public static string ReplaceGroup(string input, string pattern, string groupName, string replacement) public static string ReplaceGroup(string input, string pattern, string groupName, string replacement)
{ {
return ReplaceGroup(input, pattern, groupName, match => replacement); return ReplaceGroup(input, pattern, groupName, replacement, RegexOptions.None);
} }
/// <summary> /// <summary>
@@ -56,6 +56,34 @@ namespace ICD.Common.Utils
/// <param name="replacement"></param> /// <param name="replacement"></param>
/// <returns></returns> /// <returns></returns>
public static string ReplaceGroup(string input, string pattern, string groupName, Func<Match, string> replacement) public static string ReplaceGroup(string input, string pattern, string groupName, Func<Match, string> replacement)
{
return ReplaceGroup(input, pattern, groupName, replacement, RegexOptions.None);
}
/// <summary>
/// Uses the pattern to replace the specified group with the provided replacement string.
/// </summary>
/// <param name="input"></param>
/// <param name="pattern"></param>
/// <param name="groupName"></param>
/// <param name="replacement"></param>
/// <param name="options"></param>
/// <returns></returns>
public static string ReplaceGroup(string input, string pattern, string groupName, string replacement, RegexOptions options)
{
return ReplaceGroup(input, pattern, groupName, match => replacement, options);
}
/// <summary>
/// Uses the pattern to replace the specified group with the provided replacement string.
/// </summary>
/// <param name="input"></param>
/// <param name="pattern"></param>
/// <param name="groupName"></param>
/// <param name="replacement"></param>
/// <param name="options"></param>
/// <returns></returns>
public static string ReplaceGroup(string input, string pattern, string groupName, Func<Match, string> replacement, RegexOptions options)
{ {
MatchEvaluator evaluator = MatchEvaluator evaluator =
m => m =>
@@ -81,7 +109,7 @@ namespace ICD.Common.Utils
return sb.ToString(); return sb.ToString();
}; };
return Regex.Replace(input, pattern, evaluator); return Regex.Replace(input, pattern, evaluator, options);
} }
} }
} }