Hi Patrick,

how are you?

patrick wrote:
> Hi List,
> 
> I already know how to test url and file.
> 
>>>url? http://www.rebol.net
> 
> == true
> 
>>>file? %index.html
> 
> == true
> 
> But what if these came as strings
> 
>>>test: ["http://www.rebol.net"; "index.html"]

The problem here (apart from the 'load problems already discussed), is 
that rebol won't understand a file that is written in non Rebol format 
(that is, without the leading % sign).

A function that will do the trick, as long as you are certain there will 
only be urls and files in your data, is this:

string-to-url-or-file: func [s [string!] /local uf][
   either url? uf: attempt[load s ] [uf][to file! s]]
]

When your data is a url, load should always succeed, so attempt returns 
either a url, or somthing else, or none (e.g., if load failed) in the 
latter cases we just convert it to a file.

 >> test: ["http://www.rebol.net"; "index.html"]
== ["http://www.rebol.net"; "index.html"]
 >> repeat d test [ print [ f d "  " type? f d ]]
http://www.rebol.net    url
index.html    file


Kind regards,

Ingo


-- 
To unsubscribe from this list, just send an email to
[EMAIL PROTECTED] with unsubscribe as the subject.

Reply via email to