Helper methods to clear up parsed text
This commit is contained in:
38
lottery-co-uk-scraper/Utilities/TextRemoval.cs
Normal file
38
lottery-co-uk-scraper/Utilities/TextRemoval.cs
Normal 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;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user