DELPHI 正则按顺序排列问题(100分)

S

swalia

Unregistered / Unconfirmed
GUEST, unregistred user!
MeMo.Text中输入
NI13632323232/p1
NI13711111111/p3
NI13832323232/P2

for vPo:=0 to Memo.Lines.Count-1 do
myExpr := TRegExpr.Create;
myExpr.Expression := 'NI([^P]*)/P'''+vPo+'''';
if myExpr.Exec(d) then
repeat

listbox2.Items.Add(myExpr.Match[1]);
until not MyExpr.ExecNext;
得不到/p123顺序排列把P'''+vPo+'''删除了就能显示
应该怎么处理后能够得到1,2,3顺序排列里面的手机号码呢??
 
不太会用delphi,不知道这个能不能给lz 一点思路.我瞎想的.呵呵.
procedure TForm1.Button1Click(Sender: TObject);
var
l:TStringlist;
i,j:integer;
temp : string;
sum : array of string;
begin
try
setlength(sum,100);
l:= TStringlist.Create;
l.Text := memo1.Text;
for i := 0 to l.Count - 1 do
begin
temp := copy(trim(l.Strings),3,11);
j := strtoint(copy(trim(l.strings),16,1));
sum[j] := temp
end;
memo1.Clear;
for j := 0 to 99 do
begin
if sum[j] <> '' then
memo1.Lines.Add(sum[j]);
end;
finally
l.Free;
end;
end;
 
顶部