⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 unit1.pas

📁 词 法 分 析 器 Delphi7.0 很好的 东西 啊
💻 PAS
📖 第 1 页 / 共 2 页
字号:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;

type
  TForm1 = class(TForm)
    Memo1: TMemo;
    Memo2: TMemo;
    Button1: TButton;
    Label1: TLabel;
    procedure Button1Click(Sender: TObject);
    procedure Button4Click(Sender: TObject);
    procedure Button3Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
 var f1,e1,g1,
 m1,k1,l1,s1,
 t1,y1,str1,str2 :string;
   i:integer;
begin
 f1:=' '+'if'+' ';
 e1:=' '+'int'+' ';
 g1:=' '+'for'+' ';
 m1:=' '+'while'+' ';
 k1:=' '+'do'+' ';
  l1:=' '+'return'+' ';
 s1:=' '+'continue'+' ';
 t1:=' '+'break'+' ';
 y1:=' '+'begin'+' ';

for i:=0 to memo1.Lines.count do
 begin
  if pos((' '+'if'+' '),memo1.Lines.Strings[i]  )>0then
 memo2.Lines.Add('('+'1'+','+'"'+'if'+'"'+')');
if pos(e1,memo1.Lines.Strings[i]  )>0 then
 memo2.Lines.Add('('+'1'+','+'"'+'int'+'"'+')');
if pos(g1,memo1.Lines.Strings[i])>0 then
 memo2.Lines.Add('('+'1'+','+'"'+'for'+'"'+')');

if pos(m1,memo1.Lines.Strings[i])>0 then
 memo2.Lines.Add('('+'1'+','+'"'+'while'+'"'+')');
if pos(k1,memo1.Lines.Strings[i])>0 then
 memo2.Lines.Add('('+'1'+','+'"'+'do'+'"'+')');
if pos(l1,memo1.Lines.Strings[i])>0 then
 memo2.Lines.Add('('+'1'+','+'"'+'return'+'"'+')');
if pos(s1,memo1.Lines.Strings[i])>0 then
 memo2.Lines.Add('('+'1'+','+'"'+'continue'+'"'+')');
 if pos(t1,memo1.Lines.Strings[i])>0 then
 memo2.Lines.Add('('+'1'+','+'"'+'break'+'"'+')');
if pos((' '+'begin'+' '),memo1.Lines.Strings[i])>0 then
 memo2.Lines.Add('('+'1'+','+'"'+'begin'+'"'+')');
if pos((' '+'and'+' '),memo1.Lines.Strings[i]  )>0then
 memo2.Lines.Add('('+'1'+','+'"'+'and'+'"'+')');
if pos(' '+'arry'+' ',memo1.Lines.Strings[i]  )>0 then
 memo2.Lines.Add('('+'1'+','+'"'+'arry'+'"'+')');
if pos(' '+'case'+' ',memo1.Lines.Strings[i])>0 then
 memo2.Lines.Add('('+'1'+','+'"'+'case'+'"'+')');
if pos(' '+'const'+' ',memo1.Lines.Strings[i])>0 then
 memo2.Lines.Add('('+'1'+','+'"'+'const'+'"'+')');
if pos(' '+'div'+' ',memo1.Lines.Strings[i])>0 then
 memo2.Lines.Add('('+'1'+','+'"'+'div'+'"'+')');
if pos(' '+'downto'+' ',memo1.Lines.Strings[i])>0 then
 memo2.Lines.Add('('+'1'+','+'"'+'downto'+'"'+')');
if pos(' '+'end'+' ',memo1.Lines.Strings[i])>0 then
 memo2.Lines.Add('('+'1'+','+'"'+'end'+'"'+')');
if pos(' '+'file'+' ',memo1.Lines.Strings[i])>0 then
 memo2.Lines.Add('('+'1'+','+'"'+'file'+'"'+')');
 if pos(' '+'function'+' ',memo1.Lines.Strings[i])>0 then
 memo2.Lines.Add('('+'1'+','+'"'+'function'+'"'+')');
if pos(' '+'goto'+' ',memo1.Lines.Strings[i])>0 then
 memo2.Lines.Add('('+'1'+','+'"'+'goto'+'"'+')');
   if pos((' '+'in'+' '),memo1.Lines.Strings[i]  )>0then
 memo2.Lines.Add('('+'1'+','+'"'+'in'+'"'+')');
if pos(' '+'label'+' ',memo1.Lines.Strings[i]  )>0 then
 memo2.Lines.Add('('+'1'+','+'"'+'label'+'"'+')');
if pos(' '+'mod'+' ',memo1.Lines.Strings[i])>0 then
 memo2.Lines.Add('('+'1'+','+'"'+'mod'+'"'+')');
if pos(' '+'nil'+' ',memo1.Lines.Strings[i])>0 then
 memo2.Lines.Add('('+'1'+','+'"'+'nil'+'"'+')');
if pos(' '+'not'+' ',memo1.Lines.Strings[i])>0 then
 memo2.Lines.Add('('+'1'+','+'"'+'not'+'"'+')');
if pos(' '+'of'+' ',memo1.Lines.Strings[i])>0 then
 memo2.Lines.Add('('+'1'+','+'"'+'of'+'"'+')');
if pos(' '+'or'+' ',memo1.Lines.Strings[i])>0 then
 memo2.Lines.Add('('+'1'+','+'"'+'or'+'"'+')');
if pos(' '+'packed'+' ',memo1.Lines.Strings[i])>0 then
 memo2.Lines.Add('('+'1'+','+'"'+'packed'+'"'+')');
 if pos(' '+'procedure'+' ',memo1.Lines.Strings[i])>0 then
 memo2.Lines.Add('('+'1'+','+'"'+'procedure'+'"'+')');
if pos(' '+'program'+' ',memo1.Lines.Strings[i])>0 then
 memo2.Lines.Add('('+'1'+','+'"'+'program'+'"'+')');
   if pos((' '+'record'+' '),memo1.Lines.Strings[i]  )>0then
 memo2.Lines.Add('('+'1'+','+'"'+'record'+'"'+')');
if pos(' '+'repeat'+' ',memo1.Lines.Strings[i]  )>0 then
 memo2.Lines.Add('('+'1'+','+'"'+'repeat'+'"'+')');
if pos(' '+'set'+' ',memo1.Lines.Strings[i])>0 then
 memo2.Lines.Add('('+'1'+','+'"'+'set'+'"'+')');
if pos(' '+'then'+' ',memo1.Lines.Strings[i])>0 then
 memo2.Lines.Add('('+'1'+','+'"'+'then'+'"'+')');
if pos(' '+'to'+' ',memo1.Lines.Strings[i])>0 then
 memo2.Lines.Add('('+'1'+','+'"'+'to'+'"'+')');
if pos(' '+'type'+' ',memo1.Lines.Strings[i])>0 then
 memo2.Lines.Add('('+'1'+','+'"'+'type'+'"'+')');
if pos(' '+'untile'+' ',memo1.Lines.Strings[i])>0 then
 memo2.Lines.Add('('+'1'+','+'"'+'untile'+'"'+')');
if pos(' '+'var'+' ',memo1.Lines.Strings[i])>0 then
 memo2.Lines.Add('('+'1'+','+'"'+'var'+'"'+')');
 if pos(' '+'with'+' ',memo1.Lines.Strings[i])>0 then
 memo2.Lines.Add('('+'1'+','+'"'+'with'+'"'+')');

 if pos('+',memo1.Lines.Strings[i])>0 then
  memo2.Lines.Add('('+'4'+','+'"'+'+'+'"'+')');
  if pos('*',memo1.Lines.Strings[i])>0 then
  memo2.Lines.Add('('+'4'+','+'"'+'*'+'"'+')');
  if pos('>',memo1.Lines.Strings[i])>0 then
  memo2.Lines.Add('('+'4'+','+'"'+'>'+'"'+')');
    if pos('-',memo1.Lines.Strings[i])>0then
   memo2.Lines.Add('('+'4'+','+'"'+'-'+'"'+')');
   if pos('/',memo1.Lines.Strings[i])>0then
   memo2.Lines.Add('('+'4'+','+'"'+'/'+'"'+')');
   if pos('<',memo1.Lines.Strings[i])>0then
   memo2.Lines.Add('('+'4'+','+'"'+'<'+'"'+')');
   if pos('=',memo1.Lines.Strings[i])>0then
   memo2.Lines.Add('('+'4'+','+'"'+'='+'"'+')');
    if pos('!=',memo1.Lines.Strings[i])>0then
   memo2.Lines.Add('('+'4'+','+'"'+'!='+'"'+')');
   if pos('<=',memo1.Lines.Strings[i])>0then
   memo2.Lines.Add('('+'4'+','+'"'+'<='+'"'+')');
   if pos('>=',memo1.Lines.Strings[i])>0then
   memo2.Lines.Add('('+'4'+','+'"'+'>='+'"'+')');

   if pos(',',memo1.Lines.Strings[i])>0then
   memo2.Lines.Add('('+'5'+','+'"'+','+'"'+')');
   if pos(';',memo1.Lines.Strings[i])>0then
   memo2.Lines.Add('('+'5'+','+'"'+';'+'"'+')');
   if pos('{',memo1.Lines.Strings[i])>0then
   memo2.Lines.Add('('+'5'+','+'"'+'{'+'"'+')');
   if pos('}',memo1.Lines.Strings[i])>0then
   memo2.Lines.Add('('+'5'+','+'"'+'}'+'"'+')');
   if pos('(',memo1.Lines.Strings[i])>0then
   memo2.Lines.Add('('+'5'+','+'"'+'('+'"'+')');
   if pos(')',memo1.Lines.Strings[i])>0then
   memo2.Lines.Add('('+'5'+','+'"'+')'+'"'+')');
   if pos('.',memo1.Lines.Strings[i])>0then
   memo2.Lines.Add('('+'5'+','+'"'+'.'+'"'+')');
   if pos(':',memo1.Lines.Strings[i])>0then
   memo2.Lines.Add('('+'5'+','+'"'+':'+'"'+')');

   if pos('0',memo1.Lines.Strings[i])>0 then
   memo2.Lines.Add('('+'3'+','+'"'+'0'+'"'+')');
   if pos('1',memo1.Lines.Strings[i])>0 then
   memo2.Lines.Add('('+'3'+','+'"'+'1'+'"'+')');
   if pos('2',memo1.Lines.Strings[i])>0 then
   memo2.Lines.Add('('+'3'+','+'"'+'2'+'"'+')');
   if pos('3',memo1.Lines.Strings[i])>0 then
   memo2.Lines.Add('('+'3'+','+'"'+'4'+'"'+')');
   if pos('5',memo1.Lines.Strings[i])>0 then
   memo2.Lines.Add('('+'3'+','+'"'+'5'+'"'+')');
   if pos('6',memo1.Lines.Strings[i])>0 then
   memo2.Lines.Add('('+'3'+','+'"'+'6'+'"'+')');
   if pos('7',memo1.Lines.Strings[i])>0 then
   memo2.Lines.Add('('+'3'+','+'"'+'7'+'"'+')');
   if pos('8',memo1.Lines.Strings[i])>0 then
   memo2.Lines.Add('('+'3'+','+'"'+'8'+'"'+')');
   if pos('9',memo1.Lines.Strings[i])>0 then
   memo2.Lines.Add('('+'3'+','+'"'+'9'+'"'+')');
   if pos('10',memo1.Lines.Strings[i])>0 then
   memo2.Lines.Add('('+'3'+','+'"'+'10'+'"'+')');
   if pos('11',memo1.Lines.Strings[i])>0 then
   memo2.Lines.Add('('+'3'+','+'"'+'11'+'"'+')');
   if pos('12',memo1.Lines.Strings[i])>0 then
   memo2.Lines.Add('('+'3'+','+'"'+'12'+'"'+')');
    if pos('13',memo1.Lines.Strings[i])>0 then
   memo2.Lines.Add('('+'3'+','+'"'+'13'+'"'+')');
   if pos('15',memo1.Lines.Strings[i])>0 then
   memo2.Lines.Add('('+'3'+','+'"'+'15'+'"'+')');
   if pos('16',memo1.Lines.Strings[i])>0 then
   memo2.Lines.Add('('+'3'+','+'"'+'16'+'"'+')');
   if pos('17',memo1.Lines.Strings[i])>0 then
   memo2.Lines.Add('('+'3'+','+'"'+'17'+'"'+')');
   if pos('18',memo1.Lines.Strings[i])>0 then
   memo2.Lines.Add('('+'3'+','+'"'+'18'+'"'+')');
   if pos('19',memo1.Lines.Strings[i])>0 then
   memo2.Lines.Add('('+'3'+','+'"'+'19'+'"'+')');

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -