1

У меня есть файл csv (разделитель столбцов «<;>», разделитель текста - двойная кавычка и разделитель строк "crlf"), содержащий более 18000 строк.

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

"2"<;>"1305767"<;>"MSCUFH613249 [CRLF] 199PACKAGES"<;>""<;>"Y"[CRLF]

Я пробовал предложения, найденные в следующих постах, но безрезультатно.

  1. Заменить персонажи
  2. Заменить возврат каретки

Я смог использовать Notepad++, чтобы удалить возврат каретки с опциями Find\Replace с включенными параметрами Wrap Around и Extented. Однако это также заменяет разделитель строки в конце строки.

Я хотел бы заменить все "\r\n" или CRLF внутри любых текстовых разделителей ("") пробелом.

Спасибо

2 ответа2

3

Это должно помочь:

\n(?!")|\r(?!")|\r\n(?!")
2

Вы можете использовать следующий поиск регулярных выражений - & - replace-s:

  1. Ищите и заменяйте [CRLF] внутри " ... " простым пробелом:

    Найти: "([^"]*)\r\n([^"]*)"

    Заменить: "$1 $2"

  2. При необходимости, поиск - и - заменить <;> с соответствующим сепаратором, ,

    Найти: <;>

    ,


Пример:

Входные данные:

"2"<;>"1305767"<;>"MSCUFH613249 
 199PACKAGES"<;>""<;>"Y"

Выход:

После шага 1:

"2"<;>"1305767"<;>"MSCUFH613249   199PACKAGES<;>""<;>"Y"

После шага 2:

"2","1305767","MSCUFH613249   199PACKAGES,"","Y"

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