From catalog/rfc9110-http.abnf rule: Expect
Definition
Expect = *expectation
expectation = token ["=" (token / quoted-string) parameters]
parameters = *(OWS ";" OWS [parameter])
parameter = parameter-name "=" parameter-value
parameter-value = (token / quoted-string)
quoted-string = DQUOTE *(qdtext / quoted-pair) DQUOTE
quoted-pair = "\" (HTAB / SP / VCHAR / obs-text)
qdtext = HTAB / SP / %x21 / %x23-5b / %x5d-7e / obs-text
obs-text = %x80-ff
parameter-name = token
token = 1*tchar
tchar = "!" / "#" / "$" / "%" / "&" / "'" / "*" / "+" / "-" / "." / "^" / "_" / "`" / "|" / "~" / DIGIT / ALPHA
OWS = *(SP / HTAB)
Info
- Rulename
- Expect
- Dependencies
- HTAB, SP, OWS, ALPHA, DIGIT, tchar, token, parameter-name, DQUOTE, obs-text, qdtext, VCHAR, quoted-pair, quoted-string, parameter-value, parameter, parameters, expectation, Expect
- Used Builtins
- ALPHA, DIGIT, DQUOTE, HTAB, SP, VCHAR
Alphabet
␉ ␠! #…' *…+ -…. 0…9 A…Z ^…z | ~"(…) , / : < >…@ [ ] { } U+80…U+FF;=\
Translations
Railroad Diagram
Swift Regular Expression
|[!#-'*-+\--.0-9A-Z\^-z|~]([!#-'*-+\--.0-9A-Z\^-z|~]|=[!#-'*-+\--.0-9A-Z\^-z|~]([!#-'*-+\--.0-9A-Z\^-z|~][!#-'*-+\--.0-9A-Z\^-z|~]*=[!#-'*-+\--.0-9A-Z\^-z|~])*(;[\u{9} ;]*[!#-'*-+\--.0-9A-Z\^-z|~]|[!#-'*-+\--.0-9A-Z\^-z|~][!#-'*-+\--.0-9A-Z\^-z|~]*;[\u{9} ;]*[!#-'*-+\--.0-9A-Z\^-z|~])|(="([\u{9} -!#-\[\]-~\u{80}-\u{FF}]|\\[\u{9} -~\u{80}-\u{FF}])*"|=[!#-'*-+\--.0-9A-Z\^-z|~]([!#-'*-+\--.0-9A-Z\^-z|~][!#-'*-+\--.0-9A-Z\^-z|~]*=[!#-'*-+\--.0-9A-Z\^-z|~])*([\u{9} ]|[!#-'*-+\--.0-9A-Z\^-z|~][!#-'*-+\--.0-9A-Z\^-z|~]*([\u{9} ]|="([\u{9} -!#-\[\]-~\u{80}-\u{FF}]|\\[\u{9} -~\u{80}-\u{FF}])*")))[\u{9} ]*([!#-'*-+\--.0-9A-Z\^-z|~]|;[\u{9} ;]*[!#-'*-+\--.0-9A-Z\^-z|~]))*(|=[!#-'*-+\--.0-9A-Z\^-z|~]([!#-'*-+\--.0-9A-Z\^-z|~][!#-'*-+\--.0-9A-Z\^-z|~]*=[!#-'*-+\--.0-9A-Z\^-z|~])*(|;[\u{9} ;]*|[!#-'*-+\--.0-9A-Z\^-z|~][!#-'*-+\--.0-9A-Z\^-z|~]*(|;[\u{9} ;]*))|(="([\u{9} -!#-\[\]-~\u{80}-\u{FF}]|\\[\u{9} -~\u{80}-\u{FF}])*"|=[!#-'*-+\--.0-9A-Z\^-z|~]([!#-'*-+\--.0-9A-Z\^-z|~][!#-'*-+\--.0-9A-Z\^-z|~]*=[!#-'*-+\--.0-9A-Z\^-z|~])*([\u{9} ]|[!#-'*-+\--.0-9A-Z\^-z|~][!#-'*-+\--.0-9A-Z\^-z|~]*([\u{9} ]|="([\u{9} -!#-\[\]-~\u{80}-\u{FF}]|\\[\u{9} -~\u{80}-\u{FF}])*")))[\u{9} ]*(|;[\u{9} ;]*))
POSIX Extended Regular Expression
|[!#-'*-+\--.0-9A-Z\^-z|~]([!#-'*-+\--.0-9A-Z\^-z|~]|=[!#-'*-+\--.0-9A-Z\^-z|~]([!#-'*-+\--.0-9A-Z\^-z|~][!#-'*-+\--.0-9A-Z\^-z|~]*=[!#-'*-+\--.0-9A-Z\^-z|~])*(;[\u{9} ;]*[!#-'*-+\--.0-9A-Z\^-z|~]|[!#-'*-+\--.0-9A-Z\^-z|~][!#-'*-+\--.0-9A-Z\^-z|~]*;[\u{9} ;]*[!#-'*-+\--.0-9A-Z\^-z|~])|(="([\u{9} -!#-\[\]-~\u{80}-\u{FF}]|\\[\u{9} -~\u{80}-\u{FF}])*"|=[!#-'*-+\--.0-9A-Z\^-z|~]([!#-'*-+\--.0-9A-Z\^-z|~][!#-'*-+\--.0-9A-Z\^-z|~]*=[!#-'*-+\--.0-9A-Z\^-z|~])*([\u{9} ]|[!#-'*-+\--.0-9A-Z\^-z|~][!#-'*-+\--.0-9A-Z\^-z|~]*([\u{9} ]|="([\u{9} -!#-\[\]-~\u{80}-\u{FF}]|\\[\u{9} -~\u{80}-\u{FF}])*")))[\u{9} ]*([!#-'*-+\--.0-9A-Z\^-z|~]|;[\u{9} ;]*[!#-'*-+\--.0-9A-Z\^-z|~]))*(|=[!#-'*-+\--.0-9A-Z\^-z|~]([!#-'*-+\--.0-9A-Z\^-z|~][!#-'*-+\--.0-9A-Z\^-z|~]*=[!#-'*-+\--.0-9A-Z\^-z|~])*(|;[\u{9} ;]*|[!#-'*-+\--.0-9A-Z\^-z|~][!#-'*-+\--.0-9A-Z\^-z|~]*(|;[\u{9} ;]*))|(="([\u{9} -!#-\[\]-~\u{80}-\u{FF}]|\\[\u{9} -~\u{80}-\u{FF}])*"|=[!#-'*-+\--.0-9A-Z\^-z|~]([!#-'*-+\--.0-9A-Z\^-z|~][!#-'*-+\--.0-9A-Z\^-z|~]*=[!#-'*-+\--.0-9A-Z\^-z|~])*([\u{9} ]|[!#-'*-+\--.0-9A-Z\^-z|~][!#-'*-+\--.0-9A-Z\^-z|~]*([\u{9} ]|="([\u{9} -!#-\[\]-~\u{80}-\u{FF}]|\\[\u{9} -~\u{80}-\u{FF}])*")))[\u{9} ]*(|;[\u{9} ;]*))