title: Pos() within utf8 string boundaries
body: <p>I'd like to have a Pos() adapted to be used specifying boundaries within the Source string, rather than have it perform the search in the entire data.</p>
  
  <p>Let's say I have a string which is 100 chars long, I want to perform the Pos only between the 5th and 20th character of the (unicode/utf8) string.</p>
  
  <p>The code should be adapted from the ASM fastcode implementation in delphi, and obviously avoid pre-copying the portion of the string to a temporal one, as the purpose is making it faster than that.</p>
  
  <p>My scenario:</p>
  
  <p>I have a string which is accessed many times, and each time, a portion of it is copied to another temporal string, then a Pos is performed on it. I want to avoid the intermediary copy every time, and rather perform the Pos within the boundaries I specify.</p>
  
  <p>Edit: question edited after new one was deemed a duplicate.</p>
  
  <p>I would still like a solution that expands on the current XE3 FastCode assembly implementation, as that would fit my goal here.</p>