2010-08-06 5 views
1

소문자로 시작하고 밑줄로 끝나지 않는 변수를 일치시켜야합니다. 다음 템플릿에서 필드 명으로 사용 ^[a-z].*_$IntelliJ 구조적 검색 정규식 질문

가 :

class $Class$ { 
    $FieldType$ $FieldName$ = $Init$; 
} 

문제는 SHOULDNTFLAG는 점이다 반전이 패턴에서

private String shouldFlag; 
private String shouldntFlag_; 
private String SHOULDNTFLAG; 

:

나는이 세 가지 필드가 여전히 신고되었습니다. ^[a-z].*_$|^[A-Z].*$을 사용해 보았습니다.하지만 일치하지 않는 항목은 shouldFlag입니다. 여기서 내가 뭘 잘못하고 있니? @Stefan가 지적했듯이, 당신은 "케이스를 선택해야합니다, ...과 :

답변

2

만 ASCII 문자와 숫자를 더한 밑줄을 포함 할 수있는 변수 이름을 가정 할 때, 나는

\b[a-z]\w*\b(?<!_) 

편집으로 갈 것 -sensitive "옵션을 사용하십시오.

+0

이것은 Intelli-J에서 SHOULDNTFLAG를 허용하는 것으로 보입니다. [a-z] 문자 클래스를 [a-zA-Z]로 취급하는 것 같습니다. –

+0

SSR에서 "대소 문자를 구분"해야합니다. –

+0

쿨, 고마워. 나는 실제로 그 기능을 사용한 적이 없다. 나는 항상 정규 표현식 검색 도구, 특히 IDE와 프로그래머의 편집자가 대소 문자를 구별 할 것을 기대하지만, 계속 놀랍다. :/ –