임의의 코드가 포함된 파일이 있습니다. 각 코드에는 10개의 문자가 있으며 파일에서 해당 문자가 두 번 이상 나타나는 코드를 찾으려고 합니다. 나는 이것을하고있다 :
grep DD* [filename]
그러면 문자 "D"가 2번 나타나는 코드가 검색되지만 "D"가 1번 나타나는 코드도 표시됩니다. 2번 발생하는 코드만 표시하도록 정규식을 어떻게 변경할 수 있나요?
답변1
*
정규식은 이전 엔터티가 0회 이상 반복됨을 나타내는 수량자입니다.
수량자를 제거하세요.
grep DD filename
위의 내용은 "D"가 3번 이상 나타나는 행과도 일치합니다.
"D"뿐만 아니라 임의의 문자를 두 번 이상 원하는 경우:
grep -E '(.)\1' filename
"D"를 정확히 2번 원하는 경우:
grep -E '([^D]|^)DD([^D]|$)' filename