programing

Intelij IDEA에서 regex를 사용하여 대소문자를 소문자로 대체하려면 어떻게 해야 합니까?

copysource 2022. 10. 1. 14:46
반응형

Intelij IDEA에서 regex를 사용하여 대소문자를 소문자로 대체하려면 어떻게 해야 합니까?

검색해 보니 다른 regex 파서를 어떻게 사용하는지 알 수 있었습니다.

http://vim.wikia.com/wiki/Changing_case_with_regular_expressions
http://www.regular-expressions.info/replacecase.html

나는 이것들을 시도해 보았지만 둘 다 효과가 없었다.예를 들어 regex를 사용하여 이를 변경합니다.

private String Name;
private Integer Bar = 2;

이를 위해:

private String name;
private Integer bar = 2;

저는 이런 걸 해봤어요

replace: private (\S+) (\S+)
with: private $1 $L$2
with: private $1 \L$2
with: <etc.>

아무도 안 먹혀요.인텔리주에서도 가능합니까?아니면 이 기능이 없는 건가요?이것은 단지 교육적인 목적일 뿐이고 그 예는 조작된 것이다.나는 단지 이것이 인텔리에서 가능한지 알고 싶다.

IDEA 15에서는 다음 스위치를 사용하여 캡처된 표현식의 대소문자를 전환할 수 있습니다.이는 이 버전이 출시된 이후 공식적으로 문서화되어 있습니다.

  • \l: 다음 문자의 대소문자를 소문자로 합니다.
  • \u: 다음 문자의 대소문자를 올립니다.
  • \L: 다음 문자의 대소문자를 a까지 낮춥니다.\E또는 치환 문자열의 끝
  • \U: 다음 문자의 대소문자를 올립니다.\E또는 치환 문자열의 끝
  • \E: 에 의해 개시된 케이스 변경의 끝을 표시합니다.\U또는\L

다음으로 사용 예를 나타냅니다(설명서가 명확하지 않기 때문에).

검색: (\w+_)+(\w+) 치환: \L$1$2\E

위의 내용이 변환됩니다.FOO_BAR_BAZ로.foo_bar_bazetc $1은 첫 번째 발견된 캡처 그룹(괄호 안), $2는 두 번째 세트 등을 나타냅니다.

후세를 위해서: 이것은 처음에 @gaoaagong에 의해 보고되었고 그곳에서 기록되었습니다.

답을 검색해 보니 @ajp15243이 이미 이 질문에 답한 것을 알 수 있었습니다.현재 Intelij에서는 정규식 치환 기능을 사용하여 편지 대소문자를 변경할 수 없습니다.이 기능에 대해서는, 다음의 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 프로그램을 통해 파일을 실행해야 할 수도 있습니다.

Idea Vim 플러그인을 사용하기 시작했고 Vim에서 이런 것을 배웠습니다.이렇게 하면 아이디어 이외의 장소에서 이러한 스킬을 재사용할 수 있습니다.

다음은 요청한 작업을 수행하기 위한 vim 명령입니다.

:%s/private\s\(\w*\)\s\(w*\)/private \1 \L\2/g

IDE에 정규식을 입력하고 있다.regex 패턴을 Vim으로 이스케이프하려면 추가 슬래시가 필요합니다.

IDE 내

.IDE에서 플러그인을 찾습니다.여기에 이미지 설명 입력

언급URL : https://stackoverflow.com/questions/24149994/how-can-i-use-a-regex-to-replace-upper-case-with-lower-case-in-intellij-idea

반응형