2012-10-09 1 views
0

문자열의 처음 1000자를 표시하려고합니다 (리터럴이 특수 기호로 바뀝니다). pcre 라이브러리를 사용하여 리터럴을 대체합니다. 모든 리터럴을 교체 한 후 문자열의 길이를 검사하고 1000보다 크면 일치를 중지하고 문자열을 표시합니다.문자열의 처음 100 자의 패턴 검색

내 문제는, 길이가 1GB 인 문자열을 보내고, 그 문자열에 리터럴이 없으면 pcre은 전체 문자열을 확인합니다. 나는 처음 1000 자 안에 패턴을 찾고 싶다. 이 일을 할 수있는 방법이 있습니까?

+1

일치 함수 pcre_exec()는 문자열을 포인터로 사용하고 길이는 입니다. 첫 번째 1000 자만 검색하려면 길이를 1000으로 설정하십시오. – Sandy

답변

0

문자열의 1000 자 머리를 자르고 대체 텍스트를 사용하십시오 (전체 텍스트가 아님).

대체 후 1000 자 미만인 경우 1000 자 이상의 머리를 자르고 대체를 사용하고 두 개의 결과를 연결하십시오. 1000 자 문자열을 얻을 때까지 또는 전체 텍스트의 끝에 도달 할 때까지 반복하십시오.