String - ExtractManyDecimal

A string extension method that extracts all Decimal from the string.

Try it

public static void Main()
{	
    string input = @"abc[395\456-3254|0.362sdf";

	//C# Extension Method: String - ExtractManyDecimal
    var output = input.ExtractManyDecimal();
	
	foreach(var val in output)
	{
		Console.WriteLine(val);
	}
}

View Source
using System;
using System.Linq;
using System.Text.RegularExpressions;

public static partial class Extensions
{
    /// <summary>
    ///     A string extension method that extracts all Decimal from the string.
    /// </summary>
    /// <param name="this">The @this to act on.</param>
    /// <returns>All extracted Decimal.</returns>
    public static decimal[] ExtractManyDecimal(this string @this)
    {
        return Regex.Matches(@this, @"[-]?\d+(\.\d+)?")
            .Cast<Match>()
            .Select(x => Convert.ToDecimal(x.Value))
            .ToArray();
    }
}