title: using UITextPosition, get previous character from textInRange
body: <p>I've been searching high and low and can't figure out how to do this.  Lets say I have a string like this:</p>
  
  <pre><code>NSString *string = @"&amp;foo !foo";
  </code></pre>
  
  <p>What I'm trying to do is differentiate between the two foos (sounds funny haha) inside a text view.  When I click on one, I want to know which (&amp; or !) comes before it.  Here's how I'm getting the word:</p>
  
  <pre><code>UITapGestureRecognizer *recognizer = (UITapGestureRecognizer *)sender;
  UITextView *TV = (UITextView*)recognizer.view;
  CGPoint location = [recognizer locationInView:TV];
  location.y += TV.contentOffset.y;
  UITextPosition *tapPosition = [TV closestPositionToPoint:CGPointMake(location.x, location.y)];
  UITextRange *textRange = [TV.tokenizer rangeEnclosingPosition:tapPosition 
      withGranularity:UITextGranularityWord inDirection:UITextLayoutDirectionRight];
  NSString *tappedWord = [TV textInRange:textRange];
  </code></pre>
  
  <p>I can't figure out how to get the previous character. <code>TV.tokenizer</code> <code>UITextGranularityCharacter</code> only gets the closest letter, not the symbol.  Any solutions for this?</p>