Initial commit

This commit is contained in:
Mark J Price 2022-09-18 20:50:52 +01:00
parent 143e708681
commit 5d934d40d6
6 changed files with 52 additions and 6 deletions

View file

@ -0,0 +1,10 @@
using System.Text.RegularExpressions; // [GeneratedRegex]
partial class Program
{
[GeneratedRegex(digitsOnlyText)]
private static partial Regex DigitsOnly();
[GeneratedRegex(commaSeparatorText)]
private static partial Regex CommaSeparator();
}

View file

@ -0,0 +1,14 @@
using System.Diagnostics.CodeAnalysis; // [StringSyntax]
partial class Program
{
[StringSyntax(StringSyntaxAttribute.DateTimeFormat)]
const string fullDateTime = "dddd, d MMMM yyyy";
[StringSyntax(StringSyntaxAttribute.Regex)]
const string digitsOnlyText = @"^\d+$";
[StringSyntax(StringSyntaxAttribute.Regex)]
const string commaSeparatorText =
"(?:^|,)(?=[^\"]|(\")?)\"?((?(1)[^\"]*|[^,\"]*))\"?(?=,|$)";
}

View file

@ -3,7 +3,7 @@
Write("Enter your age: ");
string input = ReadLine()!; // null-forgiving
Regex ageChecker = new(@"^\d+$");
Regex ageChecker = DigitsOnly();
if (ageChecker.IsMatch(input))
{
@ -32,8 +32,7 @@ foreach (string film in filmsDumb)
WriteLine(film);
}
Regex csv = new(
"(?:^|,)(?=[^\"]|(\")?)\"?((?(1)[^\"]*|[^,\"]*))\"?(?=,|$)");
Regex csv = CommaSeparator();
MatchCollection filmsSmart = csv.Matches(films);

View file

@ -0,0 +1,10 @@
using System.Text.RegularExpressions; // [GeneratedRegex]
partial class Program
{
[GeneratedRegex(digitsOnlyText)]
private static partial Regex DigitsOnly();
[GeneratedRegex(commaSeparatorText)]
private static partial Regex CommaSeparator();
}

View file

@ -0,0 +1,14 @@
using System.Diagnostics.CodeAnalysis; // [StringSyntax]
partial class Program
{
[StringSyntax(StringSyntaxAttribute.DateTimeFormat)]
const string fullDateTime = "dddd, d MMMM yyyy";
[StringSyntax(StringSyntaxAttribute.Regex)]
const string digitsOnlyText = @"^\d+$";
[StringSyntax(StringSyntaxAttribute.Regex)]
const string commaSeparatorText =
"(?:^|,)(?=[^\"]|(\")?)\"?((?(1)[^\"]*|[^,\"]*))\"?(?=,|$)";
}

View file

@ -3,7 +3,7 @@
Write("Enter your age: ");
string input = ReadLine()!; // null-forgiving
Regex ageChecker = new(@"^\d+$");
Regex ageChecker = DigitsOnly();
if (ageChecker.IsMatch(input))
{
@ -32,8 +32,7 @@ foreach (string film in filmsDumb)
WriteLine(film);
}
Regex csv = new(
"(?:^|,)(?=[^\"]|(\")?)\"?((?(1)[^\"]*|[^,\"]*))\"?(?=,|$)");
Regex csv = CommaSeparator();
MatchCollection filmsSmart = csv.Matches(films);