String - GetBetween

A string extension method that get the string between the two specified string.

Try it

public static void Main()
{
	string str = "EntityFrameworkCore";

	// C# Extension Method: String - GetBetween
    string getBetweenStr = str.GetBetween("Entity", "Core");
	
	Console.WriteLine(getBetweenStr);
}

View Source
public static partial class Extensions
{
    /// <summary>
    ///     A string extension method that get the string between the two specified string.
    /// </summary>
    /// <param name="this">The @this to act on.</param>
    /// <param name="before">The string before to search.</param>
    /// <param name="after">The string after to search.</param>
    /// <returns>The string between the two specified string.</returns>
    public static string GetBetween(this string @this, string before, string after)
    {
        int beforeStartIndex = @this.IndexOf(before);
        int startIndex = beforeStartIndex + before.Length;
        int afterStartIndex = @this.IndexOf(after, startIndex);

        if (beforeStartIndex == -1 || afterStartIndex == -1)
        {
            return "";
        }

        return @this.Substring(startIndex, afterStartIndex - startIndex);
    }
}