카멜케이스 변수를 감지하는 한 줄의 코드

카멜케이스 변수를 감지하는 한 줄의 코드

정확한 스타일 규칙을 준수할 수 있도록 일부 스타일 테스트를 git 후크로 삽입하고 싶습니다. 다음과 같이 임의의 카멜케이스 변수를 감지하고 인쇄하는 oneliner를 어떻게 찾을 수 있습니까?

camelCasehere
or
camelCaseHere
or
camel_caseHere

답변1

어때요?

/bin/grep -E '[a-z]{1,}[A-Z]'

대문자 앞에 소문자 하나 이상이 필요합니다. 이는 모든 테스트 사례와 일치합니다.

camel_Case또한 다음 과 같은 것을 일치시키고 싶다면아니요 Nocamelcase당신은 그것을 사용할 수 있습니다 :

/bin/grep -E '([a-z]{1,}[A-Z])|(^.+[A-Z]{1,}[a-z])' 

직접 테스트하려면 다음과 같은 것을 사용할 수 있습니다.

cat <<EOF | /bin/grep -E '([a-z]{1,}[A-Z])|(^.+[A-Z]{1,}[a-z])'
NONMATCH                                                               
nonmatch
shouldMatch1
should_Match2
should_mAtch3
Non_match    
Non_MATCH
Should_mAtch4
Should_Match5
EOF

답변2

누군가에게 유용할 경우를 대비해 Snake Case를 사용하여 코드에서 PHP 변수를 감지하는 한 줄짜리 코드가 있습니다(GNU 가정 grep).

grep -r --include='*.php' -E '\$[a-zA-Z]+_[a-zA-Z]' .

관련 정보