英语法语西班牙语

Ad


OnWorks 网站图标

fst-compiler-utf8 - 云端在线

通过 Ubuntu Online、Fedora Online、Windows 在线模拟器或 MAC OS 在线模拟器在 OnWorks 免费托管服务提供商中运行 fst-compiler-utf8

这是命令 fst-compiler-utf8,可以使用我们的多个免费在线工作站之一在 OnWorks 免费托管服务提供商中运行,例如 Ubuntu Online、Fedora Online、Windows 在线模拟器或 MAC OS 在线模拟器

程序:

您的姓名


fst-compiler, fst-compiler-utf8 - SFST 程序的两个编译器

概要


fst 编译器 语法文件 [ 输出文件 ]
fst-编译器-utf8 语法文件 [ 输出文件 ]

配置


-c 以 fst-infl2 使用的紧凑格式存储传感器。

-l 以lowmem 格式存储换能器。

-s 换能器的开关表面和分析层。 你必须使用这个开关
为了使用 fst-infl (fst-infl2, fst-infl3) 用于生成而不是分析。

商品描述


fst 编译器 是有限状态传感器程序的编译器。 它生成一个最小化
有限状态传感器,可用于 首先, fst-infl, 第一次打印, 首先比较,
fst 解析,fst 格。 生成的紧凑换能器表示
-c 标志,由支持 fst-infl2, 第一列火车,第一场比赛。 内存效率高
使用 -l 标志生成的转换器表示仅支持 快-
通货膨胀3。

第一个程序参数是包含传感器程序的文件名。
编程语言描述如下。 第二个参数是文件名
生成的换能器将以二进制形式写入其中。 如果第二个参数是
丢失,输出将被写入 标准输出。

fst-编译器-utf8 不同于 fst 编译器 仅在字符编码中。 fst-编译器-
utf8 支持源文件的 UTF8 编码,而 fst 编译器 用于
8 位字符代码,如 latin1,是 ASCII 代码的扩展。 信息
关于编码的信息存储在传感器文件中,并由其他 SFST 程序使用。

文件 FORMATS


传感器程序由(可选的)序列组成 字母变量
定义后跟一个 传感器 表达 这定义了结果
传感器。

字母

字母表定义由关键字 ALPHABET 后跟 = 和一些转换器组成
表达例如

字母表 = [az]:[AZ]

此命令将字母表重新定义为出现在
换能器的转变。 两级运算符、否定运算符和
未加引号的句点总是必须以字母定义开头。

变量

有两种不同类型的变量。 图形符号 变量 被哈希包围
符号 (#) 并将符号序列(见下文)作为值:

#UC# = AZ
#LC# = az

传感器 变量 用美元符号括起来,并取换能器表达式为
值:

$MAP$ = [az]:[AZ]+
$MAP$ = [#LC#]:[#UC#]+

名称以符号“=”开头的变量是特殊的 协议 变量。 如果
一致性变量在一个转换器表达式中出现不止一次,它总是有
相同的值。 考虑以下传感器程序:

$=1$ = [abc]
$=1$ X $=1$

结果转换器识别字符串 aXa、bXb 和 cXc。 仅非循环传感器
(即具有有限字符串映射集的转换器)可以分配到协议
变量。

符号

一个符号是

- 像 A s 5 这样的单个字符,

- 带引号的字符,如 \* 或 \_,

- 一个多字符的符号,如或者(这总是
括在尖括号中)或

- 一个反斜杠后跟一个数字,该数字是
指定字符

- 空符号 <>。

符号序列

符号序列是字符序列、多字符符号和字符序列
范围,例如 az \。 .

符号范围

符号范围是

- 一个符号

- 用方括号括起来的符号序列,如 [A-Za-z] 或

- 以 ^ 开头并用方括号括起来的符号序列,如 [^A-Za-z]
(指定 [a-zA-Z] 的补码)或

- 句号(代表字母表中的任何符号)

换能器表达式

换能器表达式 (TE) 递归定义如下:

- 由冒号分隔的一对两个符号范围是 TE。

[az]:[az]

- 像 [az] 这样的单个符号范围是一个 TE。
它是 [az]:[az] 的缩写形式。

- 用大括号括起来并用冒号分隔的两个符号序列是
吃。 {a[bc]}:{def} 等价于 a:db:e <>:f | a:dc:e <>:f。

- 如果 X 和 Y 是 TE,则 XY 是 TE。
(空格会被忽略,除非被引用。)

- 如果 X 是 TE,则 (X) 是 TE。

- X op 是 TE 是 X 是 TE 并且 op 是 *(Kleene 的星形运算符),+
(Kleene 的加号运算符),或 ? (可选运算符)

- op X 是 TE 是 X 是 TE 并且 op 是两者之一! (否定运算符),^
(目标语言提取运算符)、_(源语言提取运算符)或 ^_
(源和目标切换运算符)。

- X op Y is a TE is X and Y is TEs and op is any & (conjunction
运算符), | (析取运算符), || (组合运算符),或 - (减法
操作员)

- 如果 L 和 R 是 TE,则 L x op y R 是 TE,x 和 y 是符号范围并且
op 是 =>(两级限制)、<=(两级强制)或 <=>(两级限制)
限制和强制)。

- X op L__R 是 TE 如果 X、L 和 R 是 TE 并且 op 是 ^->(向上
替换)、_->(向下替换)、/->(向左替换)或 \->(向右替换)
替代品)。 此外,L 和 R 必须定义自动机(即映射它们的字符串
自己)。 这些运算符对应于 Karttunen 的替换运算符。 如果
箭头后跟一个问号 (?),替换成为可选的。

- X << l 是 TE 如果 X 是 TE,并且 l 是以下形式之一
a 或 a:b 形式,其中 a 和 b 是单个字符或符号。 结果是一个
换能器,其中 l 自由插入 X。换能器 ab << c 例如是
相当于 c*ac*bc*。

- X op Y L1__R2, ... , LN__RN 是 TE 如果 X,Y, L1 到 LN 和 R1
通过 RN 是 TE,而 op 是 =>(一般限制)、<=(一般强制)、^=>
(一般表面限制),^<=(一般表面强制),^<=>(一般表面
限制和强制),_=>(一般深度限制),_<=(一般深度强制),
_<=>(一般深度限制和强制)。 (这些运算符是在以下实现的
Anssi Yli-Jyra 的建议。)

- "fname" 是一个 TE。 编译器读取名为 fname 的文件并转
将其转换为 line1|line2|line3|... 形式的转换器,其中 linex 是
文件。 除 : 和 \ 以外的所有字符都按字面解释(即不作为
运营商)。 该 TE 通常用于例如从文件中读取语素列表。

——” " 是一个 TE。编译器从
名为 fname 的文件。 这个

更多功能

注释以符号 % 开始,一直延伸到行尾。 空白被忽略
除非他们被引用。 表达式在行尾终止,除非行尾
前面有一个反斜杠。 命令

#include "fname"

可用于从名为 fname 的文件插入源代码。 命令

RE >> "fname"

将正则表达式 RE 存储在文件 fname 中。 命令

#使用霍普克罗夫特

告诉编译器从现在开始使用 Hopcroft 最小化算法,并且

#默认情况下使用

切换回默认的最小化算法 (Brzozowski)。 命令


这是一个简单的转换器程序的示例。 假设文件“adj-stems”
包含两行


晚了


这个转换器将正确地分析形容词形式easy,easy,easy和late,
后来,最新。

字母表 = [a-zA-Z] y:ie:<> :<>

$R$ = y<=>i ( :<> e)

$R2$ = e<=><> ( :<> e)

$R$ = $R$ & $R2$

$Stems$ = "词干"

$S$ = $Stems$ ( :<>| :{er}| :{美东时间})

$S$ || $R$

退出 状态


fst 编译器 除非发生错误,否则返回 0。

使用 onworks.net 服务在线使用 fst-compiler-utf8


免费服务器和工作站

下载 Windows 和 Linux 应用程序

  • 1
    斯威格
    斯威格
    SWIG 是一种软件开发工具
    连接用 C 编写的程序和
    C++ 具有各种高级
    编程语言。 SWIG 用于
    不同的...
    下载痛饮
  • 2
    WooCommerce Nextjs 反应主题
    WooCommerce Nextjs 反应主题
    React WooCommerce 主题,构建于
    Next JS、Webpack、Babel、Node 和
    Express,使用 GraphQL 和 Apollo
    客户。 React 中的 WooCommerce 商店(
    包含:产品...
    下载 WooCommerce Nextjs React 主题
  • 3
    archlabs_repo
    archlabs_repo
    ArchLabs 的软件包仓库 这是一个
    也可以获取的应用程序

    https://sourceforge.net/projects/archlabs-repo/.
    它已在 OnWorks 中托管...
    下载 archlabs_repo
  • 4
    和风项目
    和风项目
    Zephyr 项目是新一代
    实时操作系统 (RTOS)
    支持多种硬件
    架构。 它基于一个
    小尺寸内核...
    下载 Zephyr 项目
  • 5
    SCCons
    SCCons
    SCons是一个软件构建工具
    这是一个更好的选择
    经典的“Make”构建工具
    我们都知道并热爱。 SCons 是
    实施了一个...
    下载 SCons
  • 6
    聚苯乙烯
    聚苯乙烯
    PSeInt 是一个伪代码解释器
    讲西班牙语的编程学生。
    它的主要目的是成为一个工具
    学习和理解基本的
    概念...
    下载 PSeInt
  • 更多 ”

Linux 命令

Ad