C# how to split a string backwards?
<p>What i'm trying to do is split a string backwards.  Meaning right to left.</p>

<pre><code>string startingString = "&lt;span class=\"address\"&gt;Hoopeston,, IL 60942&lt;/span&gt;&lt;br&gt;"
</code></pre>

<p>What I would do normally is this.  </p>

<pre><code>string[] splitStarting = startingString.Split('&gt;');
</code></pre>

<p>so my <code>splitStarting[1]</code> would <code>= "Hoopeston,, IL 60942&lt;/span"</code></p>

<p>then I would do</p>

<pre><code>string[] splitAgain = splitStarting[1].Split('&lt;');
</code></pre>

<p>so <code>splitAgain[0]</code> would <code>= "Hoopeston,, IL 60942"</code></p>

<p>Now this is what I want to do, I want to split by ' ' (a space) reversed for the last 2 instances of  ' '.</p>

<p>For example my array would come back like so:</p>

<pre><code>[0]="60942"

[1]="IL"

[2] = "Hoopeston,,"
</code></pre>

<p>To make this even harder I only ever want the first two reverse splits, so normally I would do something like this</p>

<pre><code>string[] splitCity,Zip = splitAgain[0].Split(new char[] { ' ' }, 3);
</code></pre>

<p>but how would you do that backwards?  The reason for that is, is because it could be a two name city so an extra  ' ' would break the city name.</p>
