2012-10-09 55 views
0

我想顯示字符串的前1000個字符(文字被特殊符號替換)。我正在使用pcre庫來替換文字。替換每個文字後,我檢查字符串的長度,如果它> 1000,則停止匹配並顯示字符串。在字符串的前100個字符中搜索模式

我的問題是,假設我發送一個長度爲1GB的字符串,如果該字符串中沒有字面值,pcre會檢查整個字符串。我想在前1000個字符中搜索模式。有沒有辦法做到這一點?

+1

匹配函數pcre_exec()將該字符串作爲指針並將其作爲一個長度爲 的長度。如果您只想搜索第一個 1000個字符,請將長度設置爲1000。 – Sandy

回答

0

只需剪下一個1000字符的字符串頭,並使用替代它,而不是整個文本。

如果您在替換後得到的字符少於1000個字符,則只需剪切另一個1000字符的頭部,使用替換並連接兩個結果。循環操作,直到獲得1000個字符的字符串或達到整個文本的末尾。