Parse HTML character references: fast, spec-compliant, positional information.
npm:
npm install parse-entitiesvar decode = require('parse-entities')
decode('alpha & bravo')
// => alpha & bravo
decode('charlie ©cat; delta')
// => charlie ©cat; delta
decode('echo © foxtrot ≠ golf 𝌆 hotel')
// => echo © foxtrot ≠ golf 𝌆 hotelAdditional character to accept (string?, default: '').
This allows other characters, without error, when following an ampersand.
Whether to parse value as an attribute value (boolean?, default:
false).
Whether to allow non-terminated entities (boolean, default: true).
For example, ©cat for ©cat. This behaviour is spec-compliant but
can lead to unexpected results.
Error handler (Function?).
Text handler (Function?).
Reference handler (Function?).
Context used when invoking warning ('*', optional).
Context used when invoking text ('*', optional).
Context used when invoking reference ('*', optional)
Starting position of value (Location or Position, optional). Useful
when dealing with values nested in some sort of syntax tree. The default is:
{
start: {line: 1, column: 1, offset: 0},
indent: []
}string — Decoded value.
Error handler.
this refers to warningContext when given to parseEntities.
Human-readable reason for triggering a parse error (string).
Place at which the parse error occurred (Position).
Identifier of reason for triggering a parse error (number).
The following codes are used:
| Code | Example | Note |
|---|---|---|
1 |
foo & bar |
Missing semicolon (named) |
2 |
foo { bar |
Missing semicolon (numeric) |
3 |
Foo &bar baz |
Ampersand did not start a reference |
4 |
Foo &# |
Empty reference |
5 |
Foo &bar; baz |
Unknown entity |
6 |
Foo € baz |
Disallowed reference |
7 |
Foo � baz |
Prohibited: outside permissible unicode range |
Text handler.
this refers to textContext when given to parseEntities.
String of content (string).
Location at which value starts and ends (Location).
Character reference handler.
this refers to referenceContext when given to parseEntities.
Encoded character reference (string).
Location at which value starts and ends (Location).
Source of character reference (Location).
stringify-entities— Encode HTML character referencescharacter-entities— Info on character entitiescharacter-entities-html4— Info on HTML4 character entitiescharacter-entities-legacy— Info on legacy character entitiescharacter-reference-invalid— Info on invalid numeric character references