GREP_INFO_EX

用於 Editor_FindInFiles 巨集Editor_ReplaceInFiles 巨集 ( EE_FIND_IN_FILESW 消息EE_REPLACE_IN_FILESW 消息) 中。

typedef struct _GREP_INFOW {
	size_t cbSize;
	UINT nCP;
	UINT64 nFlags;
	LPCWSTR pszFind;
	LPCWSTR pszReplace;
	LPCWSTR pszPath;
	LPCWSTR pszBackupPath;
	LPCWSTR pszFilesToIgnore;
	UINT nLimit;
	UINT64 nTotalCount;
	HRESULT hr;
} GREP_INFOW;

欄位

cbSize

指定 size_of(GREP_INFO_EX)。

nCP

指定打開一個檔案的程式碼頁。

CODEPAGE_ANSI

標準 ANSI

CODEPAGE_UNICODE

Unicode little endian

CODEPAGE_UNICODE_BIGENDIAN

Unicode big endian

CODEPAGE_UTF8

UTF-8

CODEPAGE_UTF7

UTF-7

CODEPAGE_932

日文 Shift JIS

CODEPAGE_JIS

日文 JIS

CODEPAGE_EUC

日文 EUC

CODEPAGE_AUTO_SJIS_JIS

從日文 Shift JIS 和 JIS 轉換。

CODEPAGE_AUTO_SJIS_JIS_EUC

從 日文 Shift JIS、JIS、EUC 轉換。

Others

你能通過系統使用的所有程式碼頁。

CODEPAGE_DETECT_UNICODE

偵測 Unicode。不能與另一個值合併使用。

CODEPAGE_DETECT_UTF8

偵測 UTF-8。 不能與另一個值合併使用。

CODEPAGE_DETECT_CHARSET

偵測 HTML/XML 字元集。不能與另一個值合併使用。

CODEPAGE_DETECT_ALL

偵測所有程式碼頁。可以與其他值合併使用。

nFlags

指定一個下列值的組合。

FLAG_FIND_CASE

區分大小寫。

FLAG_FIND_COUNT_FREQUENCY

從尋找結果中創建常用字串清單。必須與 FLAG_FIND_OUTPUT_DISPLAY 合併使用。

FLAG_FIND_ESCAPE

使用逸出數列。不能與 FLAG_FIND_REG_EXP 合併使用。

FLAG_FIND_FUZZY

使用模糊比對。

FLAG_FIND_IGNORE_FILES

忽略被 pszFilesToIgnore 指定的檔案或資料夾。

FLAG_FIND_ONLY_WORD

符合整個單字。

FLAG_FIND_RECURSIVE

在指定路徑的子資料夾中搜索。

FLAG_FIND_REG_EXP

使用規則運算式。不能與 FLAG_FIND_ESCAPE 合併使用。

FLAG_FIND_REGEX_BOOST

把 Boost.Regex 作為規則運算式引擎。

FLAG_FIND_REGEX_ONIGMO

把 Onigmo 作為規則運算式引擎,Ruby 語法。

FLAG_FIND_REGEX_ONIGMO_PERL

使用 Onigmo 作為規則運算式引擎,Perl 語法。

FLAG_FIND_OPEN_DIRECT

直接打開包含指定字串的文檔。不能與 FLAG_FIND_OPEN_FILTER or FLAG_FIND_OUTPUT 合併使用。

FLAG_FIND_OPEN_FILTER

直接打開包含指定字串的文檔,並且把指定字串設為篩選器。不能與 FLAG_FIND_OPEN_DIRECT 或 FLAG_FIND_OUTPUT 合併使用。

FLAG_FIND_OUTPUT

在輸出列清單中顯示多檔尋找搜索結果。不能與 FLAG_FIND_OPEN_DIRECT 或 FLAG_FIND_OPEN_FILTER 合併使用。

FLAG_FIND_OUTPUT_ENCODING

將編碼名稱附加到檔案名。

FLAG_FIND_SEPARATE_CRLF

區分 CR 和 LF。

FLAG_REPLACE_BACKUP

儲存備份。不能與 FLAG_REPLACE_KEEP_OPEN 合併使用。

FLAG_REPLACE_KEEP_OPEN

儲存修改的檔案開啟。不能與 eeReplaceBackup 合併使用。也不能與 FLAG_REPLACE_BACKUP 合併使用。

此外,您可以指定以下值之一。

FLAG_FIND_FILE_AND_MATCHED

搜索結果將顯示檔案名和符合的字串。

FLAG_FIND_FILE_LINE_AND_MATCHED

搜索結果將顯示檔案名,行號和符合的字串。

FLAG_FIND_FILENAMES_ONLY

搜索結果僅顯示檔案名,而包含搜索字串的整行將不顯示為結果。

FLAG_FIND_LINE_ONLY

搜索結果僅顯示包含搜索字串的整行。

FLAG_FIND_MATCHED_ONLY

搜索結果僅顯示符合的字串。

pszFind

指定要搜索的字串。

pszReplace

當在多個檔案中取代時,指定要取代成的字串。

pszPath

指定要搜索的路徑。它能包括通配符例如 \* 和 ?。

pszBackupPath

當多個檔案取代時,指定備份資料夾,如果 nFlags 包含 FLAG_REPLACE_BACKUP 的話。

pszFilesToIgnore

如果 nFlags 包含 FLAG_FIND_IGNORE_FILES,指定要忽略的檔案或資料夾名稱。它能包括通配符,例如 * 和 ?。要指定多個檔案,請用分號來分隔檔案。

nLimit

當符合數達到此數字時,EmEditor 停止搜索檔案。 如果指定 0,則 EmEditor 不會停止搜索檔案。

nTotalCount

返回時,此欄位將接收所有搜索的檔案中符合字串出現的總數。如果不用於取代檔案,則返回值為所有搜索的檔案中包含符合字串的行總數。

hr

此欄位將由結果值填充,其中負值表示錯誤。錯誤值包括以下值。

E_WRONG_NUM_FORMAT

檢測到數字/IP 地址範圍的格式不正確。

E_REGEX_UNKNOWN

規則運算式引擎中發生未知錯誤。

版本

支持 Version 15.7 或之後的版本。