Description
The RegExpr.ExecNext
method searches the input string for the next text occurrence that matches the regular expression pattern. To get a portion of the text that matches the pattern, use the Match
property.
Declaration
RegExprObj.ExecNext()
RegExprObj | An expression, variable or parameter that specifies a reference to a RegExpr object | |||
Result | Boolean |
Applies To
The method is applied to the following object:
Result Value
Returns True if the text matches the expression that was found and False otherwise.
Remarks
You should initialize the Expression
property with the regular expression and the InputString
property (explicitly or implicitly via previous Exec
call) with input string before calling the ExecNext
method, otherwise an error occurs.
Example
The following example demonstrates how to use the RegExpr.ExecNext
method to iterate through the input text untill all matches are found.
DelphiScript
var
MyRegExp: OleVariant;
ResStr: String;
begin
MyRegExp:=HISUtils.RegExpr;
ResStr:='';
//This expression specifies an e-mail address pattern
MyRegExp.Expression:='[\w-]+(\.[\w-]+)*@([\w-]+\.)+[a-zA-Z]{2,7}';
if MyRegExp.Exec('Please e-mail us at [email protected] or [email protected]') then
Repeat
ResStr := ResStr + MyRegExp.Match[0] + '; ';
Until not MyRegExp.ExecNext;
Log.Message('These e-mails were extracted: '+ResStr);
//Posts the following to the log:
//'These e-mails were extracted: [email protected]; [email protected]; '
end;
See Also
Regular Expressions Syntax
Using Regular Expressions in Scripts
Expression Property
InputString Property
Match Property
Exec Method
ExecPos Method