Has anyone discovered examples for AST tr -c producing different
output than tr -C?
I tried this test script but it NEVER produces a difference in the
en_US.utf8 and fr_FR.utf-8 locales:
builtin tr
builtin rm
typeset string
typeset -li16 n_ch ;
for (( n_ch=1 ; n_ch < 0x5000 ; n_ch++ )) ; do
ch="$(printf "\u[${n_ch/~(El)16#/}]")"
string+="$ch"
done
typeset -li16 m1 m2
for (( m1=0x32 ; m1 < 0x3000 ; m1+=7 )) ; do
(( m2=m1+1500 ))
range="$(printf "\u[${m1/~(El)16#/}]-\u[${m2/~(El)16#/}]")"
tr -Cd "$range" <<<"$string" >'res_C' &
tr -cd "$range" <<<"$string" >'res_c' &
wait
res_c="$( <'res_c' )"
res_C="$( <'res_C' )"
rm 'res_c' 'res_C'
if [[ "$res_c" != "$res_C" ]] ; then
printf 'DIFFER range=%q\n' "${range}"
fi
done
So when does tr -C differ from tr -c? I need examples
Ced
--
Cedric Blancher <[email protected]>
Institute Pasteur
_______________________________________________
ast-users mailing list
[email protected]
http://lists.research.att.com/mailman/listinfo/ast-users