오늘은 4개의 작은따옴표가 포함된 행을 검색해야 합니다 '
.
하지만 g/'\{4,4\}
연속된 작은따옴표 4개만 캡처할 수 있습니다.
그래서 코드를 다음과 같이 변경했습니다 :g/\[^'\]\?'\[^'\]\?'\[^'\]\?'\[^'\]\?'\[^'\]\?
.
이것은 작동하지 않고 보기에도 좋지 않습니다.
대상 패턴이 N번째 발생한 행을 검색할 수 있는 멋진 방법 또는 최소한 실행 가능한 방법이 있습니까?
아니면 더 나은 방법은 최소 패턴 발생 횟수와 최대 패턴 발생 횟수를 지정할 수 있다는 것입니다.
답변1
이렇게 하면 됩니다:
/^[^']*\%('[^']*\)\{4}$
따옴표 뒤에 따옴표가 아닌 항목( '[^']
)이 4번 검색됩니다( \{4}
; 여기에서 범위를 지정할 수도 있습니다(예 \{2,5}
: ). 행의 숫자가 정확히 일치하는지 확인하기 위해 패턴은 다음과 같습니다.고정된시작( ^[^']*
, 앞에 선택적 비따옴표가 옴) 및 끝( $
, 후행 비따옴표가 이미 반복에 포함되어 있음).