procedure TForm1.Memo1MouseUp(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
var
  str,S1,S2: string;
  arr,A1,A2: TArray<string>;
  i: Integer;
begin
  str := Memo1.SelText;
  if not str.Contains(sLineBreak) then
  begin
    Beep;
    Exit;
  end;

  arr := str.Split([sLineBreak+sLineBreak]);
  if Length(arr) <> 2 then
  begin
    Beep;
    Exit;
  end;

  S1 := arr[0].Trim;
  S2 := arr[1].Trim;

  A1 := S1.Split([sLineBreak]);
  A2 := S2.Split([sLineBreak]);

  if Length(A1) <> Length(A2) then
  begin
    Beep;
    Exit;
  end;

  for i := 0 to Length(A1) - 1 do
  begin
    A1[i] := A1[i] + sLineBreak + A2[i];
  end;

  str := string.Join(sLineBreak+sLineBreak, A1);
  Memo1.SelText := str;
end;
posted on 2016-01-13 12:20  万一  阅读(156)  评论(0编辑  收藏  举报