RFC 822的BNF规则中的安标是什么意思?

问题描述 投票:0回答:1

IETF RFC 822 有这些BNF规则。

text        =  <any CHAR, including bare         ; => atoms, specials,
                CR & bare LF, but NOT            ;  comments and
                including CRLF>                  ;  quoted-strings are
                                                 ;  NOT recognized.

qtext       =  <any CHAR excepting <">,          ; => may be folded
                "\" & CR, and including
                linear-white-space>

dtext       =  <any CHAR excluding "[",          ; => may be folded
                "]", "\" & CR, & including 
                linear-white-space>

我想知道什么是 "安培符号"?& 在这些规则中表示。RFC 822自己的符号约定部分(第2节)并没有定义安符符号。我假设RFC 822使用的是RFC 733的BNFABNF,但RFC 733也没有定义安符的含义。

从上下文来看,我已经确定了安培符的含义 意思是以下任何一种。

  • 列表项分隔符(那是逗号的作用,而在牛津逗号式表达式中,安培并不代表最后的连词,因为我们看到的是... & 前一个 ,text 规则)。)
    • 如果它是一个列表项分隔符,那么在以下情况下应该如何解释 dtext?
  • 连接(因为连接的描述是有两个相邻的生产规则,它们之间没有运算符)。
    • 另外因为 CRLF 已经是CR和LF的连词,但RFC 822将这两个词区分为 CRLFbare CR & bare LFtext 规则。

在RFC 822的勘误表中并没有提到这一点--而RFC的后续RFC,如2822,则用全新的规则取代了带有安培号的规则,所以我无法从新的语法中推断出它的意思eithe。

那么,什么是 & 意思是?

bnf rfc822 abnf
1个回答
0
投票

英文速记词 "and"。它甚至遵守英语标点符号规则。

比较RFC 822的2个定义。

     qtext       =  <any CHAR excepting <">,     ; => may be folded
                     "\" & CR, and including
                     linear-white-space>

     dtext       =  <any CHAR excluding "[",     ; => may be folded
                     "]", "\" & CR, & including
                     linear-white-space>
© www.soinside.com 2019 - 2024. All rights reserved.