Quick question with a while() loop (AS2)

Ok… I finally got my code to search though text and make links (small woo hoo) but to do this I need a while loop at the moment it just loops 3 times but I want it to loop until it’s found all the tags in this text field. Can anyone tell me how to go about this?

 
var opening_tag:String = new String("--!");
var closing_tag:String = new String ("!--");
var words_in_tag:String = new String ("");
content_txt.html = true;
var course_content:String = new String;
course_content = content_txt.text;
var opening_tag_index:Number = course_content.indexOf(opening_tag);
var closing_tag_index:Number = course_content.indexOf(closing_tag);
var i:Number = 0;
[COLOR=red]while(i < 3){[/COLOR]
 trace(opening_tag_index);
 trace(closing_tag_index);
 
 var opening_tag_index:Number = course_content.indexOf(opening_tag);
 var closing_tag_index:Number = course_content.indexOf(closing_tag);
 
 var content_before_tag:String = course_content.substring(0, opening_tag_index);
 var content_after_tag:String = course_content.substring(closing_tag_index + length(closing_tag));
 words_in_tag = course_content.substring(opening_tag_index + length("!--"), closing_tag_index);
 //trace(words_in_tag);
 
 course_content = content_before_tag + "<p><a href='asfunction:_root.changeVisible,"+ words_in_tag +"'>"+ words_in_tag +"</a></p>"+ content_after_tag;
 trace(course_content);
 i++
 content_txt.htmlText = course_content;
 
}
 

changeVisible = function (arg:String) {
   trace("you've clicked me "+arg);
   
  };