게시판 즐겨찾기
편집
드래그 앤 드롭으로
즐겨찾기 아이콘 위치 수정이 가능합니다.
grep 정규표현식 질문
게시물ID : programmer_16078짧은주소 복사하기
작성자 : 한잔할텐가
추천 : 0
조회수 : 705회
댓글수 : 2개
등록시간 : 2016/03/07 08:15:51
옵션
  • 본인삭제금지
mysql binlog에서 특정 쿼리를 뽑으려고 합니다.

php에서 preg_match를 사용해서는 잘 되는데, php를 사용할수 없고 grep를 사용해야합니다.


php에서는

/SELECT (?s).+\/\*!\*\/;/iU

형태입니다.

중요한게 마지막 U(non-greedy)인데 이걸 grep에서 어떻게 표현해야 될지 모르겠네요

grep에서는

grep -Pi 'SELECT (?s).+(/\*!\*/;)?' binlog.txt
grep -Pi 'SELECT (?s).+(/\*!\*/;)*?' binlog.txt
grep -Pi 'SELECT (?s).+(/\*!\*/;){1}?' binlog.txt
grep -Pi 'SELECT (?s).+(/\*!\*/;)+?' binlog.txt

와 같이 했봤는데 non-greedy가 먹히지 않네요.


어떻게 하면 php와 같은 결과를 뽑을 수 있을까요?





전체 추천리스트 보기
새로운 댓글이 없습니다.
새로운 댓글 확인하기
글쓰기
◀뒤로가기
PC버전
맨위로▲
공지 운영 자료창고 청소년보호