|
pure virtual |
A wide character split parsing funtion.
See the definition of the p6WSplit interface. This function requires the caller to use Perl regular expressions.
If the provided regular expression contains capturing parentheses (e.g., (\x)*) then (as in the Perl Split function), all captured text will be included as P6WSPLITCHUNKS in the enumerator. The captured text will appear right after each normal chunked data. This extra data can be avoided by the use of non-capturing parenthese [i.e., (?: ) ].
If the provided regular expression does not result in any matches, then the original target string (pTargetStr) input is returned as a single chunk.
pRegex | [ in ] The Perl regular expression used to parse the target string. |
modifiers | [ in ] A bit mask that defines how the regex engine performs the match (see p6IWRegex). |
pTargetStr | [ in ] The target string to parse. |
chunkLimit | [ in ] The caller can control the number of chunks pulled out of the target string. A value of zero means no limit. If a chunk limit is set (e.g., 3) the last chunk returned will include the remaining part of the target string. For example in the example used above, if chunk limit was set to 3 then the results returned would have been: <0,3> <4,3> <8,9> |
ppEnum | [ out ] The returned parsed chunks. |
Success | P6R::eOk | |
Failure | P6R::eInvalidArg | One of the parameters is NULL. |
P6R::eNotInitialized | A successful call to initialize has not been done. |