Colorea todas las apariciones de cuerda en forma rápida

Este código

var textSearch="hi"
var textToShow="hi hihi hi" 
var rangeToColor = (textToShow as NSString).rangeOfString(textSearch)
var attributedString = NSMutableAttributedString(string:textToShow)
attributedString.addAttribute(NSForegroundColorAttributeName, value: UIColor.yellowColor() , range: rangeToColor)
TextView.attributedText=attributedString

me da NSRange para colorear una cadena dentro de TextView. El problema es que solo devuelve la primera aparición. Si la palabra contiene "hola hola hola" solo se colorea el primer "hola". ¿Cómo puedo obtener todas las apariciones de la cadena?

Respuestas a la pregunta(6)

Su respuesta a la pregunta