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

📄 word.dpr

📁 语法分析 语法分析
💻 DPR
📖 第 1 页 / 共 3 页
字号:

(* lexical analyzer template (TP Lex V3.0), V1.0 3-2-91 AG *)

(* global definitions: *)
{*
    下面的例子改编自lex和yacc第二版
    识别更多的话

 *}
program IsVerb;

{$APPTYPE CONSOLE}

uses
  SysUtils, LexLib;

function yylex: Integer;

  procedure yyaction(yyruleno: Integer);
    (* local definitions: *)

  begin
    (* actions: *)
    case yyruleno of
      1:
        {* 忽略空格 *};

      2,
        3,
        4,
        5,
        6,
        7,
        8,
        9,
        10,
        11,
        12,
        13,
        14,
        15,
        16,
        17,
        18,
        19,
        20,
        21:
        writeln(format('%s是动词', [yytext]));

      22,
        23,
        24,
        25,
        26,
        27:
        writeln(format('%s是副词', [yytext]));

      28,
        29,
        30,
        31,
        32,
        33,
        34:
        writeln(format('%s是介词', [yytext]));

      35,
        36,
        37,
        38,
        39:
        writeln(format('%s是连词', [yytext]));

      40,
        41,
        42,
        43,
        44,
        45:
        writeln(format('%s是形容词', [yytext]));

      46,
        47,
        48,
        49,
        50,
        51:
        writeln(format('%s是代词', [yytext]));

      52:
        writeln(format('%s无法识别', [yytext]));

      53:
        ECHO; {* 其它 */ }

    end;
  end (*yyaction*);

  (* DFA table: *)

type
  YYTRec = record
    cc: set of Char;
    s: Integer;
  end;

const

  yynmarks = 185;
  yynmatches = 185;
  yyntrans = 292;
  yynstates = 138;

  yyk: array[1..yynmarks] of Integer = (
    { 0: }
    { 1: }
    { 2: }
    1,
    { 3: }
    52,
    { 4: }
    52,
    { 5: }
    52,
    { 6: }
    52,
    { 7: }
    52,
    { 8: }
    52,
    { 9: }
    52,
    { 10: }
    52,
    { 11: }
    52,
    { 12: }
    52,
    { 13: }
    52,
    { 14: }
    52,
    { 15: }
    52,
    { 16: }
    52,
    { 17: }
    52,
    { 18: }
    52,
    { 19: }
    46,
    52,
    { 20: }
    52,
    { 21: }
    { 22: }
    53,
    { 23: }
    2,
    52,
    { 24: }
    35,
    52,
    { 25: }
    52,
    { 26: }
    3,
    52,
    { 27: }
    52,
    { 28: }
    52,
    { 29: }
    52,
    { 30: }
    50,
    52,
    { 31: }
    52,
    { 32: }
    52,
    { 33: }
    52,
    { 34: }
    7,
    52,
    { 35: }
    52,
    { 36: }
    10,
    52,
    { 37: }
    52,
    { 38: }
    52,
    { 39: }
    52,
    { 40: }
    52,
    { 41: }
    52,
    { 42: }
    52,
    { 43: }
    52,
    { 44: }
    48,
    52,
    { 45: }
    21,
    52,
    { 46: }
    52,
    { 47: }
    52,
    { 48: }
    52,
    { 49: }
    28,
    52,
    { 50: }
    52,
    { 51: }
    52,
    { 52: }
    39,
    52,
    { 53: }
    41,
    52,
    { 54: }
    52,
    { 55: }
    45,
    52,
    { 56: }
    4,
    52,
    { 57: }
    52,
    { 58: }
    37,
    52,
    { 59: }
    52,
    { 60: }
    52,
    { 61: }
    6,
    52,
    { 62: }
    52,
    { 63: }
    52,
    { 64: }
    52,
    { 65: }
    52,
    { 66: }
    52,
    { 67: }
    52,
    { 68: }
    52,
    { 69: }
    38,
    52,
    { 70: }
    52,
    { 71: }
    12,
    52,
    { 72: }
    52,
    { 73: }
    49,
    52,
    { 74: }
    52,
    { 75: }
    16,
    52,
    { 76: }
    52,
    { 77: }
    52,
    { 78: }
    18,
    52,
    { 79: }
    52,
    { 80: }
    20,
    52,
    { 81: }
    43,
    52,
    { 82: }
    44,
    52,
    { 83: }
    52,
    { 84: }
    52,
    { 85: }
    52,
    { 86: }
    52,
    { 87: }
    52,
    { 88: }
    47,
    52,
    { 89: }
    52,
    { 90: }
    52,
    { 91: }
    5,
    52,
    { 92: }
    13,
    52,
    { 93: }
    52,
    { 94: }
    52,
    { 95: }
    9,
    52,
    { 96: }
    52,
    { 97: }
    52,
    { 98: }
    52,
    { 99: }
    11,
    52,
    { 100: }
    52,
    { 101: }
    52,
    { 102: }
    52,
    { 103: }
    52,
    { 104: }
    19,
    52,
    { 105: }
    52,
    { 106: }
    22,
    52,
    { 107: }
    52,
    { 108: }
    36,
    52,
    { 109: }
    52,
    { 110: }
    51,
    52,
    { 111: }
    29,
    52,
    { 112: }
    42,
    52,
    { 113: }
    52,
    { 114: }
    31,
    52,
    { 115: }
    14,
    52,
    { 116: }
    8,
    52,
    { 117: }
    52,
    { 118: }
    32,
    34,
    52,
    { 119: }
    52,
    { 120: }
    52,
    { 121: }
    52,
    { 122: }
    52,
    { 123: }
    17,
    52,
    { 124: }
    52,
    { 125: }
    52,
    { 126: }
    40,
    52,
    { 127: }
    52,
    { 128: }
    30,
    52,
    { 129: }
    52,
    { 130: }
    15,
    52,
    { 131: }
    23,
    52,
    { 132: }
    26,
    52,
    { 133: }
    24,
    52,
    { 134: }
    52,
    { 135: }
    27,
    52,
    { 136: }
    33,
    52,
    { 137: }
    25,
    52
    );

  yym: array[1..yynmatches] of Integer = (
    { 0: }
    { 1: }
    { 2: }
    1,
    { 3: }
    52,
    { 4: }
    52,
    { 5: }
    52,
    { 6: }
    52,
    { 7: }
    52,
    { 8: }
    52,
    { 9: }
    52,
    { 10: }
    52,
    { 11: }
    52,
    { 12: }
    52,
    { 13: }
    52,
    { 14: }
    52,
    { 15: }
    52,
    { 16: }
    52,
    { 17: }
    52,
    { 18: }
    52,
    { 19: }
    46,
    52,
    { 20: }
    52,
    { 21: }
    { 22: }
    53,
    { 23: }
    2,
    52,
    { 24: }
    35,
    52,
    { 25: }
    52,
    { 26: }
    3,
    52,
    { 27: }
    52,
    { 28: }
    52,
    { 29: }
    52,
    { 30: }
    50,
    52,
    { 31: }
    52,
    { 32: }
    52,
    { 33: }
    52,
    { 34: }
    7,
    52,
    { 35: }
    52,
    { 36: }
    10,
    52,
    { 37: }
    52,
    { 38: }
    52,
    { 39: }
    52,
    { 40: }
    52,
    { 41: }
    52,
    { 42: }
    52,
    { 43: }
    52,
    { 44: }
    48,
    52,
    { 45: }
    21,
    52,
    { 46: }
    52,
    { 47: }
    52,
    { 48: }
    52,
    { 49: }
    28,
    52,
    { 50: }
    52,
    { 51: }
    52,
    { 52: }
    39,
    52,
    { 53: }
    41,
    52,
    { 54: }
    52,
    { 55: }
    45,
    52,
    { 56: }
    4,
    52,
    { 57: }
    52,
    { 58: }
    37,
    52,
    { 59: }
    52,
    { 60: }
    52,
    { 61: }
    6,
    52,
    { 62: }
    52,
    { 63: }
    52,
    { 64: }
    52,
    { 65: }
    52,
    { 66: }
    52,
    { 67: }
    52,
    { 68: }
    52,
    { 69: }
    38,
    52,
    { 70: }
    52,
    { 71: }
    12,
    52,
    { 72: }
    52,
    { 73: }
    49,
    52,
    { 74: }
    52,
    { 75: }
    16,
    52,
    { 76: }
    52,
    { 77: }
    52,
    { 78: }
    18,
    52,
    { 79: }
    52,
    { 80: }
    20,
    52,
    { 81: }
    43,
    52,
    { 82: }
    44,
    52,
    { 83: }
    52,
    { 84: }
    52,
    { 85: }
    52,
    { 86: }
    52,
    { 87: }
    52,
    { 88: }
    47,
    52,
    { 89: }
    52,
    { 90: }
    52,
    { 91: }
    5,
    52,
    { 92: }
    13,
    52,
    { 93: }
    52,
    { 94: }
    52,
    { 95: }
    9,
    52,
    { 96: }
    52,
    { 97: }
    52,
    { 98: }
    52,
    { 99: }
    11,
    52,
    { 100: }
    52,
    { 101: }
    52,
    { 102: }
    52,
    { 103: }
    52,
    { 104: }
    19,
    52,
    { 105: }
    52,
    { 106: }
    22,
    52,
    { 107: }
    52,
    { 108: }
    36,
    52,
    { 109: }
    52,
    { 110: }
    51,
    52,
    { 111: }
    29,
    52,
    { 112: }
    42,
    52,
    { 113: }
    52,
    { 114: }
    31,
    52,
    { 115: }
    14,
    52,
    { 116: }

⌨️ 快捷键说明

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