Documention for: extract-urls.r
Created by: chrisrg
on: 29-Nov-2009
Last updated by: chrisrg on: 14-Dec-2009
Format: html
Downloaded on: 30-Apr-2025

Extract URLs

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.

1. Example Usage:

 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.