Проблема: мне нужно изменить сотни строк в .csv для импорта, программа импорта не любит пробелы в поле имени (но примет их в поле описания), поэтому мне нужно заменить только пробелы в каждой строке до первая "кавычка".

Пример строки:

West Side Switch 1,33,"Incl...

Хотелось бы, чтобы это выглядело так:

West-Side-Switch-1,33,"Incl...

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

1 ответ1

0

С Notepad++, вот способ сделать работу, это заменит все пробелы, присутствующие перед первой двойной кавычкой:

  • Ctrl+H
  • Найти что: (?:^|\G)([^"\h]*)\h
  • Заменить на: $1-
  • проверить обернуть
  • проверьте регулярное выражение
  • Заменить все

Объяснение:

(?:         : start non capture group
  ^         : beginning of line
 |          : OR
  \G        : search from the last match position
)           : end group
(           : start group 1
  [^"\h]*   : 0 or more character that is not a quote or a horizontal space
)           : end group
\h          : horizontal space

Замена:

$1          : content of group 1
-           : a dash

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