如何提取txt文件的邮箱地址? ( 积分: 50 )

  • 主题发起人 主题发起人 51zhan.com
  • 开始时间 开始时间
5

51zhan.com

Unregistered / Unconfirmed
GUEST, unregistred user!
谢谢楼猪!我的邮箱:cf503@163.com


作者:风住尘香花己尽 回复日期:2007-1-26 22:04:51
好人呀,发个资料吧
ly12_31@126.com


作者:zylhh 回复日期:2007-1-26 22:07:20
呵呵给份资料吧 flashpan@163.com


作者:楼兰小贩 回复日期:2007-1-26 22:32:43
好人啊,小的我也要一份。谢谢!
xinsuiwangdong@163.com


作者:g32885 回复日期:2007-1-26 22:57:09
first19986066@126.com
QQ:296871818
谢谢楼主了。



作者:CHENMING0816 回复日期:2007-1-26 23:13:08
谢谢楼主!我也来一份 ming0365@163.com


作者:flyxin 回复日期:2007-1-26 23:29:51
好东西啊,楼主辛苦了! flyxin@126.com
 
procedure TForm1.Button1Click(Sender: TObject);
var
i,iAt,iLeft,iRight: Integer;
sLine: String;
begin
Memo1.Lines.LoadFromFile('c:/email.txt');
ListBox1.Clear;
for i := 0 to Memo1.Lines.Count - 1 do begin
sLine := Memo1.Lines;
iAt := Pos('@',sLine);
if iAt > 0 then begin
iLeft := LeftPos(Copy(sLine,1,iAt - 1));
iRight := RightPos(Copy(sLine,iAt + 1,Length(sLine) - iAt));
ListBox1.Items.Add(Copy(sLine,iLeft,iRight + iAt + 1 - iLeft));
end;
end;
end;

function TForm1.LeftPos(const AText: String): Integer;
var
i: Integer;
begin
Result := 1;
for i := Length(AText) downto 1 do begin
if (AText in ['a'..'z']) or (AText in ['A'..'Z']) or
(AText in ['1'..'9']) or (AText in ['_','0']) then Continue;
Result := i + 1;
Break;
end;
end;

function TForm1.RightPos(const AText: String): Integer;
var
i: Integer;
begin
Result := Length(AText);
for i := 1 to Length(AText) do begin
if (AText in ['a'..'z']) or (AText in ['A'..'Z']) or
(AText in ['1'..'9']) or (AText in ['_','0','.']) then Continue;
Result := i - 1;
Break;
end;
end;
 
正则表达式的pas有个例子 很方便
 
楼上可不可以提示下,用正则表达式如何实现?
 
www.google.com
 
用正则表达式
http://www.bluelight.com.cn/default.asp?u=bluelight&id=78
http://www.williamlong.info/archives/433.html
 
谢谢,搞定。
 
多人接受答案了。
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
I
回复
0
查看
843
import
I
I
回复
0
查看
680
import
I
后退
顶部