Начинайте каждую новую строку с символа (если только он не начинается с этого символа) - PullRequest
0 голосов
/ 15 декабря 2009

У меня есть несколько файлов конфигурации с сотнями строк данных в каждом.

Я бы хотел начать каждую строку (после возврата каретки) знаком фунта ('#') , если уже начинается со знака фунта. Я не хочу делать поиск + замену, потому что у меня есть другие закомментированные части файла, которые не являются началом строки.

Так, например, это:

Some data #some comment
Some more data #some other comment
Even more data
#some line comment

превратится в:

#Some data #some comment
#Some more data #some other comment
#Even more data
#some line comment

Ответы [ 3 ]

6 голосов
/ 15 декабря 2009

Используйте функцию поиска -> Заменить, но переведите ее в режим регулярных выражений и сопоставьте начало строки:

Find What:    ^([^#].*)
Replace With: #\1

Это будет соответствовать строке и всему в ней, поместите это в \1, а затем замените его на #, за которым следует то, что было введено в \1 (вся строка).

1 голос
/ 15 декабря 2009

Попробуйте найти и заменить этим регулярным выражением (в режиме регулярного выражения):

^([^#])

и замените все на #\1. (Отредактировано с отзывами Дэва - спасибо!)

0 голосов
/ 15 декабря 2009
  1. Изменить язык на Perl (Alt, L, P, DOWN)
  2. Выбрать все (CTRL-A)
  3. Блочный комментарий (CTRL-Q)
  4. Сменить язык обратно

Редактировать: неважно. Не буду игнорировать уже закомментированные строки. Ну хорошо.

...