grep Line에는 "CC"가 있지만 더 이상 C는 없습니다.

grep Line에는 "CC"가 있지만 더 이상 C는 없습니다.

예를 들어 다음 줄이 있습니다.

CCP2007
CCCP
CCCCPPPPCCC
CCCCCPPPPPCCCCC

CCP2007한 줄에 두 글자만 있으므로 첫 번째 글자를 표시하고 싶습니다 . C그 명령은 무엇입니까?

답변1

줄에 다른 문자가 없는 것으로 CC시작하는 줄 과 일치합니다.C

grep '^CC[^C]*$' file

CC줄의 시작 부분에 있을 필요 없이 마찬가지입니다 .

grep '^[^C]*CC[^C]*$' file

C그리고 줄의 총 문자 수에 관계없이:

다음으로 시작 CC하지만 시작하지 않는 행과 일치합니다 CCC(예: CCAC일치, CCCA삭제).

grep '^CC[^C]' file

최대값과 최소값 2가 반복되는 행을 일치시킵니다 C.

grep -v 'CCC'| grep 'CC'

답변2

GNU grep의 PCRE 모드 및 Perl 플레이버 사용주위를 둘러보세요CC이전이나 이후에 아무것도 없는 경우와 일치합니다 C.

grep -P '(?<!C)CC(?!C)'

또는 ERE 패턴과 유사한 것을 가짜로 만듭니다.

grep -E '(^|[^C])CC([^C]|$)'

답변3

다음을 포함하는 정확한 행을 찾으려면

관련 정보