Plug-in Reference — Structures — FIND_REGEX_INFO_EX

# FIND_REGEX_INFO_EX

Used by Editor_FindRegex inline function ( EE_FIND_REGEX message).

    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;
    	LPCWSTR pszStartAt;
    	UINT nBackRefResult;
    	UINT nBackRefBuf;
    	BACK_REF BackRef[MAX_BACK_REF];
    } FIND_REGEX_INFO_EX;

## Members

cbSize

[in] Size of this data structure, in bytes. Set this member to sizeof( FIND_REGEX_INFO_EX ) before sending the EE_FIND_REGEX message.

nFlags

[in] Specifies a combination of the following values.

FLAG_FIND_CASE | Matches cases.
FLAG_FIND_FUZZY | This special flag uses fuzzy matching, and disables regular expressions. You cannot combine fuzzy matching with regular expressions. Cannot be combined with FLAG_FIND_REGEX_BOOST, FLAG_FIND_REGEX_ONIGMO, FLAG_FIND_REGEX_ONIGMO_PERL, or FLAG_FIND_SEPARATE_CRLF.
FLAG_FIND_ONLY_WORD | Searches only words.
FLAG_FIND_REGEX_BOOST | Uses Boost.Regex as the regular expression engine.
FLAG_FIND_REGEX_ONIGMO | Uses Onigmo as the regular expression engine, using the Ruby syntax.
FLAG_FIND_REGEX_ONIGMO_PERL | Uses Onigmo as the regular expression engine, using the Perl syntax.
FLAG_FIND_SEPARATE_CRLF | Treats CR and LF separately.

pszRegex

[in] Specifies a regular expression to search for.

pszText

[in] Specifies a string to search.

ppszStart

[out] The pointer at the beginning of the string where the regular expression matches.

ppszEnd

[out] The pointer at the end of the string where the regular expression matches.

ppszNext

[out] The pointer at the position of the string where the next regular expression search should occur if necessary.

pszReplace

[in] Specifies a replace expression.

pszResult

[out] Specifies a pointer to the buffer to receive the replaced string.

cchResult

[in] Specifies the size of the buffer in characters.

pszStartAt

[in] Specifies the starting position where the search begins. If this is NULL, the search starts at the beginning of the string (pszText).

nBackRefResult

[out] Returns the number of backreferences stored in the BackRef field.

nBackRefBuf

[in] This field should be MAX_BACK_REF if you want to receive backreferences, or 0 if you don't need to receive backreferences.

BackRef

[out] Returns backreferences. For example, BackRef[0] = \0, BackRef[1] = \1, BackRef[2] = \2, ..., BackRef[1000] = \k<1000>.

## Version

Supported on Version 15.7.