FIND_REGEX_INFO_EX¶
用于 Editor_FindRegex 内联函数 ( EE_FIND_REGEX 消息)中。
typedef struct _FIND_REGEX_INFO_EX {
size_t cbSize; // sizeof( FIND_REGEX_INFO_EX )
UINT64 nFlags;
LPCWSTR pszRegex;
LPCWSTR pszText;
LPCWSTR* ppszStart;
LPCWSTR* ppszEnd;
LPCWSTR* ppszNext;
LPCWSTR pszReplace;
LPWSTR pszResult;
UINT cchResult;
} FIND_REGEX_INFO_EX;
成员¶
cbSize
[in] 以字节为单位的数据结构大小。在发送 EE_FIND_REGEX 消息之前,把这个构成设为 sizeof( FIND_REGEX_INFO_EX )。
nFlags
[in] 指定一个下列值的组合。
FLAG_FIND_CASE | 区分大小写。 |
FLAG_FIND_FUZZY | 此特殊标志使用模糊匹配,并禁用正则表达式。您不能将模糊匹配与正则表达式结合使用。即不能与 FLAG_FIND_REGEX_BOOST,FLAG_FIND_REGEX_ONIGMO,FLAG_FIND_REGEX_ONIGMO_PERL,或 FLAG_FIND_SEPARATE_CRLF 合用。 |
FLAG_FIND_ONLY_WORD | 仅搜索单词。 |
FLAG_FIND_REGEX_BOOST | 把 Boost.Regex 作为正则表达式引擎。 |
FLAG_FIND_REGEX_ONIGMO | 把 Onigmo 作为正则表达式引擎,Ruby 语法。 |
FLAG_FIND_REGEX_ONIGMO_PERL | 使用 Onigmo 作为正则表达式引擎,Perl 语法。 |
FLAG_FIND_SEPARATE_CRLF | 区分 CR 和 LF 。 |
pszRegex
[in] 指定要搜索的正则表达式。
pszText
[in] 指定要搜索的字符串。
ppszStart
[out] 指针位于与正则表达式匹配的字符串的开始处。
ppszEnd
[out] 指针位于与正则表达式匹配的字符串的结尾处。
ppszNext
[out] 如果必要的话,指针位于下一个正则表达式搜索应当发生的位置。
pszReplace
[in] 指定一个替换表达式。
pszResult
[out] 指定一个指针指向要接收被替换的字符串的缓冲区。
cchResult
[in] 指定以字符为单位的缓冲区大小。
pszStartAt
[in] 指定搜索开始的起始位置。如果这个值是 NULL,搜索从字符串起始处开始 (pszText)。
nBackRefResult
[out] 返回储存在 BackRef 字段的向后引用的数目。
nBackRefBuf
[in] 这个字段应该是 MAX_BACK_REF 如果你想要接收向后引用,或 0 如果你不需要接收向后引用。
BackRef
[out] 返回向后引用。例如,BackRef[0] = \0, BackRef[1] = \1, BackRef[2] = \2, ..., BackRef[1000] = \k<1000>.
版本¶
支持 Version 15.7 或之后的版本。