2016-11-10 2 views
0

Есть ли способ поиска любого \n в комментарии "" в Notepad ++ и заменить его так, чтобы в комментариях не было пробелов?Regex Соответствует любой новой строке в комментарии

Например:

This is just an example 

"Hello, 

I am separated. 

But I would like 

to be [together]" 

Finish 

я могу изменить первый " для < и второй " для > но в <> или "" не должно быть пространство:

Я хотел бы иметь следующий результат:

This is just an example 

"Hello, I am separated. But I would like to be [together]" 

Finish 

Thanks,

+1

от notepadd ++ вы можете это сделать, но не только с одной командой замены, вам придется многократно нажимать команду replace, если все \ n не будут удалены, что это будет делать? –

ответ

2

Вот способ сделать работу:

  • Найти то, что: [^"]*(?:\G|")\K([^"\r\n]+)\R+
  • Заменить: $1

Где:

  • (?:\G|"): конец предыдущего успешный матч или двойная кавычка
  • \K: обнуление оператор, который сбрасывает предыдущий матч
  • [^"\r\n]+: 1 или более символов, которые не ", \r или \n
  • \R+: 1 или больше разрыв строки
+0

Спасибо Toto, но это будет работать, если курсор находится в комментарии. Например: курсор представлен 'x'. Если курсор находится за пределами комментария как 'x (" ... ")', он ничего не найдет. Но если курсор находится в комментарии '' x '', он найдет его. Есть ли способ начать смотреть за пределами комментария как 'x '" 'и найти следующий' '' '? –

+0

@ Chüngel: просто добавьте '[^"] * 'в начало регулярного выражения. См. Мое редактирование. – Toto

+0

Все еще не работает. См. Пример: [link] (https://regex101.com/r/Ha70iw/ 1) Я могу изменить первый '' 'для' '' и '' '' '' для '>', но я хотел бы удалить пробелы в строках, содержащих комментарии. –

Смежные вопросы