string utilities and test