Separates URLs from the body of plain text. Inspired by John Gruber (except REBOL doesn't do Regex):
A Liberal, Accurate Regex Pattern for Matching URLs
This function returns a block containing strings and urls.
do %extract-urls.r sanitize: func [str][ foreach [fr to][ "&" "&" "<" "<" "^"" """ ][ replace/all str fr to ] ] link-up: func [str][ foreach part extract-urls str [ append "" either url? part [ rejoin [{<a href="} part: sanitize form part {">} part {</a>}] ][ sanitize part ] ] ]
This will take a plain text string and replace URLs with HTML link tags.