У меня есть файл, который я очищаю, структура файла немного повреждена, но возможен способ исправить.

проблема

1|firstname|lastname CRLF    
|address|Tel|1|firsname|lastname|address|Tel|

Теоретически эту проблему можно решить, удалив CRLF и найдя вторую |1| в строке и переместить его на новую строку. Я попытался сделать это вручную, но позже я заметил, что файл большой, и он собирается занять некоторое время для очистки.

Мне нужен вывод, чтобы быть таким:

1|firstname|lastname|address|Tel 
1|firstname|lastname|address|Tel

2 ответа2

1

Я нашел двухэтапное решение:

  1. удалить разрывы строк:
    • открыть диалог поиска / замены (CTRL+H)
    • выберите "регулярное выражение"
    • найти что \R
    • Заменить на (ничего такого)
    • нажмите "заменить все"
  2. вставлять разрыв строки перед каждым |1|:
    • найти что: \|1\|
    • заменить на: \n1|
0

Один шаг может быть:

  • Найти что: ^(.*)\R?(.*?)\|(?=1\|)
  • Замените на: $1$2\n или $1$2\r\n зависимости от платформы
  • Заменить все

Не проверяйте . matches newline

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .