ProSol.Html.TagsProvider/src/Tools/StringExtensions.cs
Alexander Kozachenko fc19e6e4e1 Release v1.0.2
- moved folders around
- provided readme
2023-11-07 16:51:25 +03:00

21 lines
621 B
C#

namespace ProSol.Html.Tools;
internal static class StringExtensions
{
internal static ReadOnlySpan<char> Clip(
this ReadOnlySpan<char> html,
ReadOnlySpan<char> beginAny,
ReadOnlySpan<char> endAny,
bool strip = false)
{
var begin = html.IndexOfAny(beginAny);
if (begin == -1)
{
throw new ArgumentException($"Unable to Clip html. Incorrect html met:\n {html.ToString()}");
}
var end = begin + html[begin..][1..].IndexOfAny(endAny) + 2;
var result = html[begin..end];
return strip ? result[1..^1] : result;
}
}