title: Funky LINQ Required
body: <p>The below is a CSV string I am working with.  Its much bigger in reality but this is enough to display a pattern. </p>
  
  <p><strong>Please note that I have put this CSV on seperate lines just to demonstrate my pattern easily.</strong>  </p>
  
  <p><strong>After a CSV split the number of fields are variable depending on how big the original string is i.e. the string is a variable length which makes the number of indexes variable</strong></p>
  
  <p><strong>The letter in the pattern may not always be P, it could be U, O or F</strong></p>
  
  <pre><code>G9999999990001800002777107050,
  G9999999990002777107HMNLAQKPRLLHRAQRWJ010,
  1,
  3,
  29,
  P,
  6.74,
  11.23,
  07,
  U,
  5.25,
  14.29,
  08,
  O,
  6.89,
  16.92,
  07,
  P,
  5,
  4,
  </code></pre>
  
  <p>I want to pick up the 5th (29) and 6th (P) elements and then miss 2 elements and then pick the next element (07) and the one after (P) and so on until I get to the end of the string.</p>
  
  <p>In this example I will have
  29
  P
  07
  P
  08
  P
  07
  P</p>
  
  <p>Is there an easy way to do this, I assume LINQ will offer something</p>
  
  <p>Thanks</p>