Práce s řetězci

Nejčastější procedury a funkce IDL pro práci s řetězci jsou (neuvádíme všechny možné klíčové parametry):

;príklad - pole 1x10 a 2x3
AA= Strarr(10)
BB= Strarr(2,3)

;príklad - pole retezcu ['0','1','2','3','4','5','6','7']
CC= Sindgen(8)

;príklady
A= String(data)
B= String(hh, mm, ss, Format='(I2, ":", I2, ":", I2)')
;vektor bytovych cisel primo koduje retezec (zde "Hello")
C= String([72B, 101B, 108B, 108B, 111B])
;príklad
D= A + B
;príklad
E= Strjoin(Sindgen(4))
;príklad
i= Strpos(B,':')
;nalezení prípony souboru
j= Strpos(jmeno_souboru, '.', /Reverse_search)
pripona= Strmid(jmeno_souboru, j+1, Strlen(jmeno_souboru)-j)

;príklad
Strput, 'jedna tri', 'dva ', 6

;zepredu
Str= Strtrim('   slovo')
;zezadu
Str= Strtrim('slovo    ',1)
;z obou stran
Str= Strtrim('   slovo  ', 2)
;nahrazeni mezer pomlckami
Str = 'Toto je veta.'
print, Strjoin(Strsplit(Str, /EXTRACT), '-')

;pozice znaku '/'
slash= Strsplit(cesta_k_souboru,'/')
;príklady
if A eq B then ...
if Strcmp(A, B) then ...
;porovnani prvnich n znaku bez ohledu na velika/mala pismena
if Strcmp(A, B, n, /Fold_case) then ...

;nalezeni vsech 4-znakovych slov zacinajicich "f" nebo "F" a koncicich "t" or "T":
str = ['foot', 'Feet', 'fate', 'FAST', 'ferret', 'fort']
Print, str[Where(Strmatch(str, 'f??t', /Fold_case) eq 1)]


L.Přech, poslední úpravy 6.2.2004