在XML解析中,表示标记开头和结尾的字符名称是什么?

时间:2013-08-27 06:48:09

标签: xml parsing xml-parsing

一点背景知识。我正在为一个模板语言编写一个解析器,这是XML的一个子集。我正在编写自己而不是使用现有解析器的原因是真实的,但不值得进入这里。

我的解析器遍历字符串中的字符并在检测到新标记的开始,关闭现有标记等时切换模式(基本上它是有限状态机)。

我想知道的是给存储标签开启,标记更近和终止斜线字符的常量赋予什么名称。 (我知道我只是在那里命名,但我对这些名字不满意)

所以对此:

<MyTag attr="foo" />

你实际上称之为以下字符(在解析的上下文中):

  • <
  • >
  • /

我特别关注“标记更接近”,因为它确实含糊不清,是指</MyTag>之类的内容还是引用终止/>。明白了吗?我想毫不含糊地命名一切。


澄清一下:我知道这些字符被调用了什么,我实际上是在用动词来描述这些字符触发解析器的内容,而不是字符的名称实际上是什么。假设语言实际上是这样编写的:[Mytag attr=/foo/ #]。它是相同的语言,只是触发模式切换的不同字符。

1 个答案:

答案 0 :(得分:4)

<>字符称为angle brackets or chevrons/字符称为forward slash。我会使用这些名称,因为它们是明确的。