Suppose I had the string \"1 AND 2 AND 3 OR 4\", and want to create an array of strings that contains all substrings \"AND\" or \"OR\", in order, found within the string.
Your probably looking for a tokeniser or Lexer, have a look at the following article:
C# Regular Expression Recipes—A Better Tokenizer