Helper methods to clear up parsed text

This commit is contained in:
Ross Healy
2024-02-03 22:28:35 +00:00
parent fbbb2e9d6f
commit 0cd68968d9

View File

@@ -0,0 +1,38 @@
using System.Globalization;
using System.Text.RegularExpressions;
namespace lottery_co_uk_scraper.Utilities
{
public class TextRemoval
{
public static string RemoveOrdinalSuffix(string input)
{
return Regex.Replace(input, "(?<=\\d)(st|nd|rd|th)\\b", "");
}
public static DateTime ParseDateString(string dateString)
{
// Define the prefix to be ignored
string prefixToIgnore = "Lotto Results ";
// Check if the input string starts with the specified prefix
if (dateString.StartsWith(prefixToIgnore))
{
// Remove the prefix before attempting to parse the date
dateString = dateString.Substring(prefixToIgnore.Length);
}
// Helper function to remove ordinal suffix from day
string cleanedDateString = RemoveOrdinalSuffix(dateString);
if (DateTime.TryParseExact(cleanedDateString, "dddd d MMMM yyyy", CultureInfo.InvariantCulture, DateTimeStyles.None, out var parsedDate))
{
return parsedDate;
}
else
{
return DateTime.MinValue;
}
}
}
}