2015-06-16 4 views
1

У меня есть следующий текст в документе (с помощью Notepad ++).Regex in Notepad ++ для замены

Теперь я хочу заменить все появление регулярных выражений на?.

у меня есть:

'{$data}', '{$data2}', '{$res}','{$blahblahblah}' 

И я хочу, чтобы они стали,,??

Я пробовал использовать \b^'{(.+)}'$\b, но это, похоже, не находит шаблон.

+0

Вы не должны использовать '^' и '$' здесь .. –

+0

Вместо этого вы должны использовать '\ {\ $. +? \}'. – Maroun

ответ

2

Вы должны удалить якоря и границы слов. И было бы идеально, если бы вы избежали брекетов.

'\{\$.*?\}' 

Затем замените матч символом ?.

+0

Я думаю, что причина проблемы OP также ускользает от фигурных скобок, не так ли? – Bentoy13

+0

По иронии судьбы, это было решение, которое работает для Notepad ++. – tester2001

+0

@ Bentoy13 некоторые языки/инструмент показывает ошибку, некоторые не будут –

4

Вы можете использовать следующее:

'{\$[^}]+}' 

и заменить ?

См DEMO

Пояснение:

  • '{\$ матч цитаты, фигурная скобка и $ literls
  • [^}]+} Инвертированный символьный класс, чтобы соответствовать ничего, кроме } более чем один раз (+) с последующим } ... Эквивалент в .*?}, но в 2-3 раза быстрее