All pastes #247562 Raw Edit

Someone

public text v1 · immutable
#247562 ·published 2006-11-13 17:35 UTC
rendered paste body
(* Skriv en funktion fillInForm som tar en sträng och en stränglista som argument. Strängen skall betraktas som ett "formulär" där text som kan fyllas i representeras av ett dollartecken ($). Funktionen skall returnera formuläret, men med varje successiv förekomst av ett dollartecken utbytt mot successiva element i listan! Om det finns färre dollartecken än element i listan så kan du bara ignorera de extra elementen. *)






fun	fillInForm'(strang,[],n,z)		= strang
|	fillInForm'(strang,lista,n,z)	= 
	if z>n then strang else
		if String.sub(strang,z) = #"$" 
			then  String.substring(strang,0,z) ^ hd(lista) ^ fillInForm'(String.substring(strang,z + 1,n - z),tl(lista),n+size(hd(lista))-1,z+1)
			else fillInForm'(strang,lista,n,z+1);

fun 	fillInForm(strang,lista) 	= fillInForm'(strang,lista,size(strang)-1,0);