我正在设计文本解析器的架构。例句:Content here, content here.
整句是......句子,这很明显。 The
,quick
等是单词; ,
和.
是标点符号。但是一般来说,单词和标点符号是什么?它们只是符号吗?我根本不知道如何以最合理的抽象方式命名单个句子的组成部分(因为有人可能将其写成由字母/元音等组成)。
感谢您的帮助:)
答案 0 :(得分:3)
你所做的是技术词汇分析(“lexing”),它采用一系列输入符号并生成一系列标记或词汇。所以单词,标点符号和空格都是标记。
在(E)BNF术语中,词汇或代币与“终端符号”同义。如果您将解析规则集视为树,则终端符号是树的叶子。
那么你输入的原子是什么?这是一个单词还是一个句子?如果它是单词(和空格),则句子更类似于解析规则。实际上,“句子”一词本身就具有误导性。将整个输入序列称为句子并不罕见。
一系列非空白字符的半常用术语是“textrun”。
答案 1 :(得分:2)
在谈论解析时经常使用的两个子类别“单词”和“标点符号”的常用术语是“令牌”。
答案 2 :(得分:2)
根据您正在查看的lexical analysis输入文字的哪个阶段,这些将是“lexemes”或“tokens”。