Řetězce
deleteMultipleSpace() – odstranění přebytečných mezer v řetězci
function deleteMultipleSpace returns character (result as character):
assign result = trim(result).
do while index( result, “ “ ) > 0:
assign
result = replace( result, “ „, “ “ )
result = replace( result, “ „, “ “ ).
end.
return result.
end. /* function deleteMultipleSpace */
assign lv_nejaky_retezec = deleteMultipleSpace(lv_nejaky_retezec).
CODEPAGE-CONVERT() – konverze kódové stránky
STRING() – převádí jiný datový typ na řezězec
STRING(TIME,“HH:MM AM“)
STRING(Customer.CustNum, „>>>9“) FORMAT „x(30)“
Operátor zřetězení: +
FOR EACH Customer NO-LOCK:
DISPLAY SKIP(1) Customer.Name SKIP Customer.Address SKIP
Customer.City + „, “ + Customer.State FORMAT „x(16)“ Customer.Country
Customer.PostalCode SKIP(2).
END.
DISPLAY fname + “ “ + (IF minit <> ? THEN minit + „. “ ELSE „“) + “ “ + lname FORMAT „x(36)“.
DISPLAY fname + “ “ + minit + “ “ + lname FORMAT „x(36)“.
NUM-ENTRIES() – vrací počet prvků ze seznamu
NUM-ENTRIES (seznam [, oddělovač])
Příklad:
Příklad:
DEFINE VARIABLE i AS INTEGER NO-UNDO.
DEFINE VARIABLE svetove_strany AS CHARACTER NO-UNDO INITIAL „východ,západ,sever,jih“.
REPEAT i = 1 TO NUM-ENTRIES(svetove_strany):
DISPLAY ENTRY(i, svetove_strany) FORMAT „x(12)“.
END.
┌─────────┐
│ východ │
│ západ │
│ sever │
│ jih │
└─────────┘
Příklad:
LOOKUP() – vrací první pozici výrazu v seznamu
LOOKUP(hledaný_výraz, seznam [, oddělovač])
Pokud není výraz nalezen, vrací 0.
define variable seznam_statu as character no-undo initial „ME,MA,VT,RI,CT,NH,ME“.
define variable zadej as character no-undo format „x(2)“.
define variable pozice as integer no-undo.
repeat:
set zadej label „Zadej zkratku státu v Nové Anglii: „.
assign pozice = lookup(zadej, seznam_statu).
if pozice > 0
then message „Ano, “ + zadej + “ je zkratka státu v Nové Anglii. V seznamu se vyskytuje na pozici “ + string(pozice) + „.“.
else message „Ne, “ + zadej + “ není zkratka státu v Nové Anglii!“.
end.