BBCode

{{Short description|Lightweight markup language used in message boards}}

{{distinguish|BBC}}

BBCode ("Bulletin Board Code") is a lightweight markup language used to format messages in many Internet forum software. It was first introduced in 1998.{{cite web |title=BBCode history |url=https://www.bbcode.org/history.php |website=www.bbcode.org |access-date=21 February 2025}} The available "tags" of BBCode are usually indicated by square brackets ([ and ]) surrounding a keyword, and are parsed before being translated into HTML.{{cn|date=December 2024}}

Tags

class="wikitable" style="width:100%; text-align:left;"

! style="width:40%;" | Example in HTML/CSS

! style="width:40%;" | BBCode

! style="width:20%;" | Output

bolded text{{Cite web|title=HTML Text Formatting|url=https://www.w3schools.com/html/html_formatting.asp|access-date=2021-05-01|website=W3Schools}},
bolded text or
bolded text

| [b]bolded text[/b]

| bolded text

italicized text,
italicized text or
italicized text

| [i]italicized text[/i]

| italicized text

underlined text or
underlined text

| [u]underlined text[/u]

| underlined text

strikethrough text or
strikethrough text

| [s]strikethrough text[/s]

| strikethrough text

https://en.wikipedia.org
English Wikipedia

| [url]https://en.wikipedia.org[/url]
[url=https://en.wikipedia.org]English Wikipedia[/url]

| [https://en.wikipedia.org https://en.wikipedia.org]
[https://en.wikipedia.org English Wikipedia]

This is just an example

| [img alt="This is just an example" ]https://upload.wikimedia.org/wikipedia/commons/7/70/Example.png[/img]

| File:Example.png

:-)

| :) or [:-)]
This would be another way to use the [img]url_img[/img] and must be pre-configured by the forum administrator.
(This and other emoticons, depending on the variant. Most BBCodes do not enclose emoticons in square brackets, leading to frequent accidental usage.)

| File:Face-smile.svg
(Specific image and size vary.)

quoted text


(Usually implemented in more advanced ways.)

| [quote]quoted text[/quote]
[quote="author"]quoted text[/quote]
(including optional author)

| Using a Wikipedia template: {{quote|text=quoted text}}{{quote|author=author|text=quoted text}}

monospaced text

| [code]monospaced text[/code]

| monospaced text

Large Text or
Smaller Text

| [style size="30px"]Large Text[/style]
[style size="85"]Smaller Text[/style]
(The unit of measurement varies with each BBCode variant and could represent pixels, points, or relative HTML sizes.)

| Large Text
Smaller Text

Text in fuchsia or
Text in fuchsia

| [style color="fuchsia"]Text in fuchsia[/style] or
[style color=#FF00FF]Text in fuchsia[/style] or
[color=#FF00FF]Text in fuchsia[/color]
(Both HTML color names and hexadecimal color values are generally supported, although on some boards, you must omit the # from selecting a hexadecimal color.)

| Text in fuchsia

  • Entry A
  • Entry B

  1. Entry 1
  2. Entry 2

|

[list]

[*]Entry A

[*]Entry B

[/list]

[list=1]

[*]Entry 1

[*]Entry 2

[/list]

Some message boards do not need the square brackets around the markers.e.g. BOINC Project Forums et al.

(Many variants for li and /li, list types – unordered and ordered, with different bullets or counter formats – etc.)

|

  • Entry A
  • Entry B
  1. Entry 1
  2. Entry 2

table cell 1 table cell 2
table cell 3 table cell 4

|

[table]

[tr]

[td]table cell 1[/td]

[td]table cell 2[/td]

[/tr]

[tr]

[td]table cell 3[/td]

[td]table cell 4[/td]

[/tr]

[/table]

(Some variants for thead, rules, etc.)

|

{| class="wikitable"

| table cell 1

| | table cell 2

| table cell 3

| | table cell 4

|-

| colspan="3" style="text-align: center;" | Source:{{cite web |title=BBCode tags reference |url=https://www.bbcode.org/reference.php |website=www.bbcode.org |access-date=12 January 2022}}

|}

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.{{Citation needed|date=January 2022}}

Applying traditional parsing techniques is made difficult by ambiguities in the markup, such as in {{code|1=[quote=[b]text[/b][/quote]}}, where the input can either be interpreted as "text" quoted from someone called {{code|[b}}, or the bolded text "text" surrounded by {{code|1=[quote=}} and {{code|lang=bbcode|code=[/quote]}}, i.e. [quote=text[/quote].

See also

References