Я хотел бы искать несколько файлов через eclipse для следующих двух строк:
@Length(max = L_255)
private String description;
и замените их на эти два:
@Length(max = L_255, message="{validator.description.len}")
private String description;
Я хотел бы искать несколько файлов через eclipse для следующих двух строк:
@Length(max = L_255)
private String description;
и замените их на эти два:
@Length(max = L_255, message="{validator.description.len}")
private String description;
Поиск по умолчанию является многострочным в Eclipse, когда вы используете regex:
(\@Length\(max = L_255)\)([\r\n\s]+private)
Я хотел бы добавить "private String description;"
(\@Length\(max = L_255)\)([\r\n\s]+private\s+?String\s+description\s*?;)
заменить на:
\1, message="{validator.description.len}")\2
Он отлично работает в поиске файлов, вызванном CTRL - H.
Как указано в Tika answer, вы можете напрямую скопировать две выбранные строки в поле "Содержит текст" : эти строки будут преобразованы как регулярные выражения для вас Eclipse.
Еще один совет о том, как получить регулярное выражение для выбранного блока. Откройте один из файлов, который содержит несколько строк (многострочный) для поиска или замены. Нажмите Ctrl + F и выберите "Регулярное выражение". Закройте окно "Найти/заменить". Выберите нужный блок и нажмите еще раз Ctrl + F, чтобы открыть окно "Найти/заменить". Теперь в текстовом поле Найти есть регулярное выражение, которое точно соответствует вашему блоку выбора.
(я обнаружил это, только после создания вручную регулярного выражения для очень длинного блока:)
CTRL + H принимает две строки, если вы используете regexp (и вам не нужно писать regexp самостоятельно, eclipse делает это для вас).
Быстрый совет для включения нескольких строк в состав встроенного регулярного выражения:
Если вы обычно используете .*
для соответствия любому символу ноль или более раз, вместо этого подумайте о том, чтобы использовать что-то вроде (?:.|\r?\n)*
. Или поставьте дополнительный ?
в конце, чтобы сделать его неживым.
Объяснение: .
не соответствует новым строкам, поэтому необходимо выполнить "or-or": круглые скобки соответствуют либо .
перед каналом, либо новой строке после него. ?
после \r
возвращает карету до того, как фишка строки станет необязательной для новых строк Windows или Unix. ?:
исключает все это как группу захвата (что помогает избежать).
Выберите папку, содержащую все ваши файлы, и нажмите Ctrl + H.