title: How to efficiently determine if a string starts with a number and then get all following numbers up until the first non-numeric character?
body: <p>I have a requirement to sort some strings that contain data like this:</p>
  
  <pre><code>var strings = new List&lt;string&gt;{"2009 Arrears","2008 Arrears","2008 Arrears Interest","2009 Arrears Interest"};
  </code></pre>
  
  <p>And they want the results ordered like this:</p>
  
  <ol>
  <li>"2009 Arrears"</li>
  <li>"2009 Arrears Interest"</li>
  <li>"2008 Arrears"</li>
  <li>"2008 Arrears Interest"</li>
  </ol>
  
  <p>It seems like I need to create a function to see if the string starts with a number. If so, the function will get all numbers up until the first character and sort the numeric result descending and then sort the remaining characters ascending. I am having trouble trying to write a method that gets all starting numbers in a string. What would be an efficient way to do that?</p>