Substring in ksh88 ?

Hello,

ksh88 doesn't support ${var:x:y}.
Any alternatives to get substring ?

thanks
Vilius

An alternative is to use cut, something like:

myvar=$(echo $var | cut -c2-5)

There is no direct way, but you could do something like this

#!/bin/ksh

function substring
{
    typeset string="$1" out
    typeset -i offset=$2 length=$3

    while (( offset > 0 ))
    do
        string="${string#?}"
        (( offset = offset - 1 ))
    done

    while (( length > 0 ))
    do
        out="$out${string%${string#?}}"
        string="${string#?}"
        (( length = length - 1 ))
    done

    print "$out"
}

substring abcdefghij 2 4