VIM 검색 및 바꾸기

VIM 검색 및 바꾸기

vim에서 패턴을 검색/바꾸기/바꾸기/교체하기 위해 정규식을 사용하려고 합니다.

날씨 데이터 변수가 설정되었는지 확인하고 그렇지 않은 경우 한 가지 작업을 수행한 후 이를 무시하고 JSON 형식으로 처리하는 Java 파일이 있습니다. 다른 클래스에 메소드를 작성했습니다(StumpJunk.isSet이라고 함 - null인지 비어 있는지 확인하여 PHP isset과 동일).

내 이전 접근 방식은 if (varName != null)이었습니다.

내가 원하는 새로운 패턴은 if (StumpJunk.isset(varName)) 입니다.

VIM에서 다양한 정규식 접근 방식을 시도했지만 성공하지 못했습니다.

:%s/if (\(.*\)) != null)/(StumpJunk.isSet(\1))/g
:%s/if \(\(.*\)\) \!\= null\)/\(StumpJunk.isSet\(\1\)\)/g
:%s/if \v\((.*)\) \!\= null\)/(StumpJunk.isSet(\1))/g
:%s/if \v\((.*)\) \!\= null\)/(StumpJunk.isSet("\1")/g

패턴을 찾을 수 없다는 메시지가 돌아올 때마다:

Pattern not found: \vif\((.*) \!\= null\) 

답변1

)첫 번째 패턴에 너무 많고 if대체 항목이 누락되었습니다.

:%s/if (\(.*\) != null)/if (StumpJunk.isSet(\1))/g   

관련 정보