我正在尝试在FPC中使用正则表达式模式(Free Pascal) - 更多信息:http://wiki.freepascal.org/IDE_regular_expressions
无论其!我无法确定如何匹配3或4小写(a-z)字符链的第一次出现(如果有)。
然后我继续尝试相同的表达,但这次允许大写&编号为3或4字符串。
帮助感谢! :
例如(我尝试的事情+例子):
s := 'My Name';
// I want the 'ame' portion 1st since there exists a consecutive string of 3 lowercase chars.
// Attempts:
SplitRegExpr('[[:alnum:]]{3,4}');
SplitRegExpr('[a-z]{3,4}');
SplitRegExpr('[[:alnum:]]{3,4}?');
对Ken White的回应,我认为这是正确的链接,不是吗? http://www.gnu-pascal.de/gpc/RegEx.html 我理解这些定义,但我没有看到如何正确地使用它们(例如我正在尝试做的)匹配模式以及从它们返回的内容。
答案 0 :(得分:0)
这是一个提取所有3或4个小写字符序列的程序。
{$APPTYPE CONSOLE}
{$IFDEF FPC}{$MODE DELPHI}{$ENDIF}
uses
regexpr;
var
expr: TRegExpr;
begin
expr := TRegExpr.Create;
expr.Expression := '[a-z]{3,4}';
if expr.Exec('My Name is Bunny.') then
repeat
WriteLn(expr.Match[0]);
until not expr.ExecNext;
expr.Free;
ReadLn;
end.