what does ^ mean?
beginning of line/string, so it's probably not what you need.
\b might serve you better, this is a word boundary.
so, what is your problem extending the pattern to match [url]ftp://[/url] as well?
[edit: had some typo's in there, hope it wasn't confusing]