fork(1) download
  1. using System;
  2. using System.Collections.Generic;
  3. using System.IO;
  4. using System.Linq;
  5. using System.Text.RegularExpressions;
  6.  
  7. public class Test
  8. {
  9. public static void Main()
  10. {
  11. var rx = @"(WordA\s)?(?:WordB\s)?WordC";
  12. var strings = new List<String> {"WordC", "WordB WordC", "WordA WordC", "WordA WordB WordC"};
  13. foreach (var s in strings)
  14. {
  15. var m = Regex.Match(s, rx);
  16. Console.WriteLine("{0}: {1}", s, (m.Groups[1].Success ? "NO MATCH" : m.Value));
  17. }
  18. }
  19. }
Success #stdin #stdout 0.06s 21040KB
stdin
Standard input is empty
stdout
WordC: WordC
WordB WordC: WordB WordC
WordA WordC: NO MATCH
WordA WordB WordC: NO MATCH