C# 9.0 new pattern matching feature
What is Pattern Matching
- checks if a value has a certain shape.
- C# 9.0 Introduce relational patterns like >,<,>=,<=,not, and, or etc.
if (obj is Vendor{ YearOfBirth: >= 1983} VendorDOB1983) {
// Use the VendorDOB1983 variable here }
using System;
namespace ConsoleApp13
{
class Program
{
static void Main(string[] args)
{
Employee.PatternMatchingEnhancements(20);
Console.ReadLine();
}
}
public class Employee
{
public static void PatternMatchingEnhancements(object character)
{
var isLetter = character is (>= 'a' and <= 'z') or (>= 'A' and <= 'Z') and not (>= '0' and <= '9');
Console.WriteLine($"{character} is a letter and not a number: {isLetter}");
}
}
}