BBCode
BBCode ("Bulletin Board Code") is a lightweight markup language used to format messages in many Internet forum software. It was first introduced in 1998. The available "tags" of BBCode are usually indicated by square brackets ([
and ]
) surrounding a keyword, and are parsed before being translated into HTML.
Tags
Implementation
BBCode is typically implemented by applying a series of regular expression string-replace operations upon the input. Because regular expressions are limited in analyzing the structure of text input, this has the artifact that any non-hierarchical BBCode input will be transformed into invalid non-hierarchical HTML without error.
Applying traditional parsing techniques is made difficult by ambiguities in the markup, such as in [quote=[b]text[/b][/quote]
, where the input can either be interpreted as "text" quoted from someone called [b
, or the bolded text "text" surrounded by [quote=
and [/quote]
, i.e. [quote=text[/quote]
.