lex:Lex是Ruby中lex工具的实现

时间:2024-02-21 07:56:00
【文件属性】:

文件名称:lex:Lex是Ruby中lex工具的实现

文件大小:24KB

文件格式:ZIP

更新时间:2024-02-21 07:56:00

ruby ruby-gem compiler tokenizer lexer

莱克斯 Lex是Ruby中的编译器构建工具lex的实现。 目的是保持原始工具的工作方式,并将其与Ruby的表现力结合起来。 产品特点 非常专注的工具,模仿了基本的lex功能。 100%Ruby实现。 提供全面的错误报告,以协助词法分析器构建。 安装 将此行添加到您的应用程序的Gemfile中: gem 'lex' 然后执行: $ bundle 或自己安装为: $ gem install lex 内容 1.概述 Lex是一个处理字符输入流的库。 例如,假设您具有以下输入字符串: x = 5 + 44 * ( s - t ) 然后, Lex将输入字符串划分为与一系列正则表达式规则匹配的标记。 在这种情况下,给出令牌定义: :ID , :EQUALS , :NUMBER , :PLUS , :TIMES , :LPAREN , :RPAREN , :MINUS 输出将包含以下令牌: [ :ID , 'x' , 1 , 1 ] , [ :EQUALS , '=' , 1 , 3 ] , [ :NUMBER , '5' , 1 , 5 ] , [ :PLUS , '+'


【文件预览】:
lex-master
----.gitignore(118B)
----tasks()
--------coverage.rake(210B)
--------console.rake(224B)
--------spec.rake(685B)
----README.md(13KB)
----CHANGELOG.md(379B)
----appveyor.yml(614B)
----Gemfile(208B)
----lex.gemspec(2KB)
----.rspec(41B)
----spec()
--------unit()
--------spec_helper.rb(1KB)
----LICENSE.txt(1KB)
----.travis.yml(359B)
----lib()
--------lex.rb(248B)
--------lex()
----Rakefile(139B)

网友评论