本文整理自网络,侵删。
仅作记录,方便复用。适合以下格式的类型处理
“
aaaa dfaafa@qq.com sfsfs
afalfjaf afdaf@sina.com.cn afaf 阿发
”
一行一个 email 有明显的分割符号。一行多个email 还要改一下。
program Project1;
{$APPTYPE CONSOLE}
{$R *.res}
uses
System.SysUtils,
windows,
perlregex;
var
txt,savetxt:TextFile;
str:string;
reg:TPerlRegEx;
i:int64;
begin
try
reg := TPerlRegEx.Create;
AssignFile(txt,'xxx.com.sql');
AssignFile(savetxt,'saved.txt');
Reset(txt);
Rewrite(savetxt);
reg.RegEx := '([A-Za-z0-9-_.+%]+@[A-Za-z0-9-.]+\.[A-Za-z]{2,4})';
i:=0;
while not Eof(txt) do
begin
Readln(txt,str);
reg.Subject := str;
if reg.Match then
begin
Writeln(savetxt,reg.Groups[1]);
end;
Inc(i);
write(#13);
write(IntToStr(i));
end;
CloseFile(txt);
CloseFile(savetxt);
reg.Free;
Readln;
except
on E: Exception do
Writeln(E.ClassName, ': ', E.Message);
end;
end.
相关阅读 >>
winapi 字符及字符串函数(15): charnext、charprev
Delphi新建服务,停止系统服务,以及获取服务状态和新建系统服务器的方法
更多相关阅读请进入《Delphi》频道 >>