Объедините две строки и удалите повторяющиеся символы
У меня есть 2 строки, и я хочу объединить их и удалить дубликаты.
Пример:
a=abcdefghijkl
b=dfg
тогда объединение их должно дать
c=dfgabcehijkl
где значение b
предоставляется пользователем. Как я могу это сделать?
2 ответа
Решение
Нет необходимости sed
, Вы можете сделать это в чистом виде:
a=abcdefghijkl
b=dfg
c="$b${a//[$b]/}"
echo "$c"
При этом используются встроенные в bash возможности подстановки строк, чтобы выполнить глобальную замену $a
, удалив все символы, которые находятся в $b
, Выход:
dfgabcehijkl