Команда Substitute Ex - хороший инструмент для манипулирования CSV-линиями
Я часто манипулирую CSV-файлами, используя команду Ex.значения в вашем наборе через диапазон символов:
[ a-zA-Z]
-> аналогично \w
, но в вашем наборе нет _0-9
и нам нужны пробелы.
Я помещаю это в группу символов, используя экранированные скобки.
Кроме того, поскольку у нас может быть запятая или конечная скобка, я создаю другую группу символов и разрешаю любой символ с помощью оператора чередования:
\(,\|\]\)
Проверка соответствия нашего шаблона здесь:
Эти группы символов затем упоминаются в строке замены (и включите цитаты).
Собрав все вместе, вот команда подстановки:
:s/\([ a-zA-Z]\+\)\(,\|\]\)/"\1"\2/g
До:
После:
Менее сложное решение
Как указала @bimlas, менее сложное решение будет выглядеть следующим образом:
:s/[^,]\+/"\0"/g
\0
простоссылка на весь подобранный шаблон (см. :help \0
).