Изменение порядка столбцов в текстовом файле
Да, это возможно в рамках vanilla Notepad++
, хотя, как уже было отмечено, существуют также плагины, которые будут это делать. Лучшим (более надежным) подходом может быть использование некоторых инструментов обработки текста из командной строки, но если вам нужно быстрое и грязное решение, вы можете найти его ниже:
Предполагая, что ваш точный ввод ( col1|col2|col3
, разделитель трубы, без трубы col2
):
Найти :(.*?)\|(.*?)\|(.*)
Заменить :\1|\3|\2
работает для меня здесь Notepad++
, построен в январе 2015 года. Несколько грубо, но это работает.
Объяснение:
.*
- соответствует любому символу (кроме новой строки), от нуля до неограниченного времени
.*?
- соответствует любому символу (кроме новой строки), как указано выше, не жадным образом (т.е. соответствует как можно меньше )
(.*)
- простые скобки обозначают группу захвата выше (для использования в Replace, например \1
, \2
и \3
т. д.)
\|
- \
избегает pipe ( |
), чтобы соответствовать ему буквально
\1|\3|\2
- вывести первую группу соответствия, трубу, третью группу соответствия, трубу, вторую группу соответствия