Hodnota typu string!
je sequence kódovacích bodů Unicode nebo hodnot typu char!.
Typ string!
je subtypem těchto typesetů: any-string!
, default!
, series!
Jednořádkový řetězec:
(Žádný či více znaků uvnitř apostrofů.
"foo"
Víceřádkový řetězec:
Žádný či více znaků uvnitř složených závorek.
{foo}
Jednořádkový řetězec musí obsahovat únikové
(escaped) znaky pro nový řádek:
>> cr
== #"^M"
>> lf
== #"^/"
>> crlf
== "^M^/"
Víceřádkový řetězec může obsahovat znaky nového řádku, uvozovky a páry závorek. Nespárované závorky musí být 'escaped' předsazením znakem ^
, např. {foo^{}
.
Hodnoty typu string! lze vytvořit také při runtime konstruktorem make
nebo konverzí to
.
>> s: make string! 100
== ""
>> to string! 'foo
== "foo"
>> to string! [bar]
== "bar"
>> to string! 42
== "42"
Rovněž je možné použít funkce form
a mold
ke konverzi hodnoty na "user-friendly" řetězec".
>> form 'foo
== "foo"
>> mold 'bar
== "bar"
Note
|
Pokus o převod hodnoty none konverzí to vyvolává chybové hlášení.
|
Na hodnotu typu string!
lze aplikovat všechny komparátory: =, ==, <>, >, <, >=, <=, =?
. Rovněž jsou podporovány funkce min
a max
.
Funkcí string?
ověříme, zda posuzovaná hodnota je typu string!
.
>> string? "foo"
== true
Funkce type?
vrací typ dané hodnoty.
>> type? "foo"
== string!
a-an
, any-string?
, ask
, charset
, clean-path
, dirize
, ellipsize-at
, help-string
, input
, load
, pad
, string?
, to-string
as
, call
, checksum
, debase
, dehex
, difference
, do
, enbase
, exclude
, get-env
, intersect
, lowercase
, parse
, set-env
, to-local-file
, union
, unique
, uppercase