Как я могу использовать регулярное выражение для замены верхнего регистра на нижний регистр в Intellij IDEA?
я погуглил для этого и узнал, как это сделать с другими парсерами регулярных выражений:
http://vim.wikia.com/wiki/Changing_case_with_regular_expressions
http://www.regular-expressions.info/replacecase.html
Я пробовал эти и ни одна из них не работает. В качестве примера, я хочу использовать регулярное выражение, чтобы изменить это:
private String Name;
private Integer Bar = 2;
для этого:
private String name;
private Integer bar = 2;
Я пробовал что-то вроде этого:
replace: private (S+) (S+)
with: private $L
with: private L
with: <etc.>
ни один из них не работает. Возможно ли это сделать в intellij, или это недостающая функция? Это просто для образовательных целей, и пример надуман. Я просто хочу знать, если это возможно сделать в intellij.
3 ответа:
в идее 15 вы можете использовать следующие переключатели для переключения случая захваченных выражений. Это сейчас официально документированы так как эта версия была выпущена.
\l
: опустите регистр одного следующего символа\u
: в случае одного следующего символа\L
: опустите регистр следующих символов до a\E
или конец замены строка\U
: дело в следующем символы, пока не будет\E
или конец строки замены\E
: отметьте конец изменения дела, инициированного\U
или\L
вот пример использования (так как документация не ясна):
найти: (\w+_)+(\w+) заменить: \L$1$2\E
выше будет конвертировать
FOO_BAR_BAZ
доfoo_bar_baz
и т. д $1 относится к первому найденному захвату группа (в скобках), $2 ко второму набору и т. д.ради потомства: это было изначально об этом сообщает по @gaoagong и документально здесь.
искал ответ, а затем понял, что @ajp15243 уже ответил на этот вопрос выше. В настоящее время в Intellij нет возможности использовать функцию замены регулярных выражений для изменения регистра буквы. Существует краткое обсуждение по следующему URL-адресу об этой функции.
http://www.jetbrains.com/idea/webhelp/regular-expression-syntax-reference.html
вы также можете проголосовать за эту функцию в выпуске Youtrack здесь:
http://youtrack.jetbrains.com/issue/IDEA-70451
есть плагин regex Intellij, но увы он также не поддерживает нижний и верхний корпус.
http://plugins.jetbrains.com/plugin/19?pr=idea
возможно, Вам просто придется запустить файлы через программу perl, чтобы правильно их заменить.
Я начал использовать Идея Vim plugin и научиться делать такие вещи в Vim. Таким образом, я мог бы повторно использовать эти навыки вне идеи.
вот команда vim, чтобы сделать то, что вы просили.
:%s/private\s\(\w*\)\s\(w*\)/private \L/g
регулярное выражение вводится в среде IDE. Дополнительные косые черты необходимы для выхода из шаблона регулярных выражений в Vim.
найти плагин из среды IDE.