![grep을 사용하여 단어에서 여러 개의 반복 문자 찾기](https://linux55.com/image/11810/grep%EC%9D%84%20%EC%82%AC%EC%9A%A9%ED%95%98%EC%97%AC%20%EB%8B%A8%EC%96%B4%EC%97%90%EC%84%9C%20%EC%97%AC%EB%9F%AC%20%EA%B0%9C%EC%9D%98%20%EB%B0%98%EB%B3%B5%20%EB%AC%B8%EC%9E%90%20%EC%B0%BE%EA%B8%B0.png)
"in"이라는 글자가 세 번 반복되는 "interlinking"과 같은 단어가 있습니다. grep을 사용하여 한 단어에서 두 글자가 세 번 반복되는 다른 단어를 찾기 위해 Dictionary.txt 파일을 검색하는 방법(예: "priestesses"에는 두 문자 "es"가 세 번 포함되어 있음)
답변1
역참조가 필요합니다!
이미 일치된 항목을 참조하여 다시 일치시키려는 경우 역참조를 사용하세요.
grep '\(..\)\(.*\1\)\{<n - 1>\}' <file>
.*
모든 문자 시퀀스와 일치합니다.\(..\)
두 문자를 일치시키고 캡처합니다.\1
첫 번째 캡처링 그룹과 일치합니다(이 경우\(..\)
시작 부분에 가까운 그룹).
<n - 1>
대체 시퀀스의 길이를 1만큼 줄이고 이를 <file>
찾고 있는 파일 이름으로 바꾸십시오(또는 표준 입력을 사용하려면 생략하십시오).
이는 가장 효율적인 솔루션은 아니지만 작동합니다.