Быстрый способ - сделать две замены. Один для нижнего регистра и один для верхнего. Это будет выглядеть примерно так:
public static function StringReplaceAll( source:String, find:String, replacement:String ) : String
{
var replacedLowerCase:String = StringReplace(source, find.toLowerCase(), replacement.toLowerCase());
return StringReplace(replacedLowerCase, find.toUpperCase(), replacement.toUpperCase());
}
private static function StringReplace( source:String, find:String, replacement:String ) : String
{
return source.split(find).join(replacement);
}
Таким образом, в этом случае вы сохраните дело с вашим find
в неизменном виде, т.е.
trace(StringReplaceAll('HELLO there', 'e', 'a'));
// traces HALLO thara
Если вы не хотите сохранять дело в целости и сохранности, @ RIAstar's String.replace()
ответ будет чище.
(Но вы могли бы также использовать его пример дважды в этом отношении)