First of all, thanks to everyone who replied! I have several good suggestions. Here is one that seems to work pretty well, to cover a multitude of situations:
$msg = eregi_replace("([[:alnum:]]+)://([^[:space:]]*)([[:alnum:]#?/&=])","<a href=\"\\1://\\2\\3\" target=\"_blank\">\\1://\\2\\3</a>", $msg); The only problem is that if a correctly formatted link is already in the text, then this routine tries to add an additional href and it gets all messed up. Is there any way that I can use this algorithm and logically tell it not to do the replace if the anchor tags are already in place? I can't just search for an anchor <a> tag because there can be several in the text. Example: $myLink = "<a href=\"http://www.mytest.com\" target=\"_n\">Testing</a>"; echo makeLink($myLink); Creates $msg = <a href="<a href="http://www.mytest.com" target="_blank">http://www.mytest.com</a>" target="_n">Testing</a> Any suggestions? "Gaylen Fraley" <[EMAIL PROTECTED]> wrote in message [EMAIL PROTECTED]">news:[EMAIL PROTECTED]... > I have need to be able to replace text within a string to turn it into a > link. In other words, I might have a phrase lik: > > "blah, blah, blah, please visit my site at www.mysite.com. blah, > blah,blah". > > I need to have the string converted to "blah, blah, blah, please visit my > site at http://www.mysite.com. blah, blah,blah". The link might have more > than 3 sections and won't necessarily end in .com (.net,.com.nl, etc.). > > Here is what I have been testing (then I get stuck): > $myLink = "Please visit my web site at www.mysite.com. You will be glad you > did!"; > $repLink = preg_replace("/(www.)/i","<a href=http://\\1",$myLink); > > which yields > Please visit my web site at <a href=http://www.mysite.com. You will be glad > you did! > > What I would need is > Please visit my web site at <a > href=http://www.mysite.com>www.mysite.com</a>. You will be glad you did! > > To be truthful, pattern matching is giving me migraines! Programming has > always been natural to me (32 years of it), but this challenge (eregi, > preg_match,etc.) is making me crazy! Can someone recommend a good tutorial > or book on this subject? > > Thanks! > > > -- PHP General Mailing List (http://www.php.net/) To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] To contact the list administrators, e-mail: [EMAIL PROTECTED]