7. ABNF List Extension: #rule (ABNF 列表扩展)
核心概念
在 HTTP 字段值中,逗号分隔的列表构造非常常见。# 运算符类似于 * 运算符,用于定义列表。
语法定义
#element => [ ( *LWS element *( *LWS "," *LWS element )) ]
等价于:
1#element => element *( OWS "," OWS element )
说明
#运算符允许空元素(两个连续的逗号)- 列表中的空白字符 (OWS) 在解析时应被移除
- 实现应该容忍列表中的空元素
示例
规则 1#token 可以匹配:
token1token1, token2token1,token2,token3token1 , token2 , token3