Description
Inspect a UTF-8 lead octet's expected sequence length.
Unicode code points, UTF-16 units and UTF-8 octets are different representations. A local escape or byte check can report useful structure without establishing that an entire encoded string is well formed.
Inspect a UTF-8 lead octet's expected sequence length.
When to use this tool
Use Decoding: UTF-8 Leading Byte Sequence Length when inspecting the stated scalar, escape or byte-layout component.
How to use the tool and how it works
- Enter byte. Use the units and conventions below.
- Run the tool. Correct any format, range, or cross-field input error before interpreting the output.
- Read result. Expand result to inspect the returned fields.
Inspect a UTF-8 lead octet's expected sequence length. Require whole byte in [0,255]; return lengths 1 for ASCII, 2 for C2-DF, 3 for E0-EF, 4 for F0-F4, otherwise zero and invalid-leading flag.1
Unicode scalar values exclude surrogate code points. Code units, scalar values and encoded byte sequences are distinct representations.2
| Input field | Meaning and units | Accepted input |
|---|---|---|
| byte | One numeric octet, from 0 through 255. | Required. Safe integer. |
| Output field | Interpretation | Returned shape |
|---|---|---|
| result | Returned object; expand its named members below. | Required. Object. |
| result.sequenceLength | Sequence Length | Calculated result member: number. |
| result.validLeadingByte | Whether the octet can begin a modern UTF-8 sequence; continuation bytes and C0/C1/F5..FF are not valid starts. | Calculated result member: boolean. |
{
"input": {
"byte": 240
},
"output": {
"result": {
"sequenceLength": 4,
"validLeadingByte": true
}
}
} Limitations and assumptions
- A permitted lead byte does not validate following bytes, scalar range or a complete UTF-8 sequence.
- Outputs are nested inside result. Inputs must satisfy both the field types and the cross-field conditions above. Invalid input causes an error; a successful false flag or documented placeholder is a different result.
- Numeric calculations use binary floating point unless exact decimal-integer arithmetic is explicitly stated. No hidden measurement tolerance or decimal rounding is added; nonfinite or out-of-contract results are rejected. Numeric signed-zero results are exported as zero.
Alternative or Complementary methods
Use a conforming complete decoder for strings and distinguish Unicode scalar validity from source-language or HTML error recovery.
References
-
Calculation and input contract: decode/utf8-leading-byte-sequence-length — tool.io
-
Unicode 17.0: conformance and encoding forms — Unicode Consortium
Similar or alternative tools
- Decoding: UTF-8 Continuation Payload Bits
Extract one UTF-8 continuation octet's six payload bits.
- Decoding: Utf16 Surrogate Pair Scalar
Decode an ordered UTF-16 surrogate pair to a scalar.