У меня проблема с удалением только цифр из моей строки/массива (преобразование легко) в bash. Фокус в том, что в массиве у меня есть элементы, содержащие как цифры, так и другие символы, и я хочу их сохранить.Удаление только элементов из массива/строки в bash
Так
VAR="a2b a22 12b 417 900 600 86400 3600"
Выход должен быть
"a2b a22 12b"
Самая дальняя Я мог бы это:
echo ${VAR}# | sed 's/ [0-9][0-9]*[$ ]/ /g'
но это еще не решает проблему. Я попытался сделать это в массиве, но без «$» и «^» я не могу предотвратить удаление некоторых частей «хороших элементов».
Может ли кто-нибудь помочь мне с этим?
Если последовательность из цифр * всегда * следует смешанные последовательности, вы могли бы получить, с регулярное регулярное выражение 'sed 's/[^ a-zA-Z] [^ a-zA-Z] * $ //'', но для общего решения см. ответ Джона ниже. –