Passa al contenuto principale

4. Sintassi delle sequenze di byte UTF-8

Per comodità degli implementatori che utilizzano ABNF, qui viene fornita una definizione di UTF-8 in sintassi ABNF.

Sintassi ABNF

UTF8-octets = *( UTF8-char )
UTF8-char = UTF8-1 / UTF8-2 / UTF8-3 / UTF8-4
UTF8-1 = %x00-7F
UTF8-2 = %xC2-DF UTF8-tail
UTF8-3 = %xE0 %xA0-BF UTF8-tail / %xE1-EC 2( UTF8-tail ) /
%xED %x80-9F UTF8-tail / %xEE-EF 2( UTF8-tail )
UTF8-4 = %xF0 %x90-BF 2( UTF8-tail ) / %xF1-F3 3( UTF8-tail ) /
%xF4 %x80-8F 2( UTF8-tail )
UTF8-tail = %x80-BF

Valori di byte non validi

I seguenti valori di byte non appaiono mai in sequenze UTF-8 valide:

  • 0xC0, 0xC1 (produrrebbero sequenze a 2 byte troppo lunghe)
  • 0xF5 - 0xFF (oltre l'intervallo Unicode)

Collegamenti correlati