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