BBCode ("Bulletin Board Code") es un lenguaje de marcado ligero que se utiliza para dar formato a los mensajes de muchos programas de foros de Internet . Se introdujo por primera vez en 1998. Las "etiquetas" disponibles de BBCode suelen indicarse mediante corchetes ( [
y ]
) que rodean una palabra clave y se analizan antes de traducirlas a HTML . [1]
BBCode se implementa generalmente aplicando una serie de operaciones de reemplazo de cadenas de expresiones regulares a la entrada. Debido a que las expresiones regulares tienen limitaciones para analizar la estructura de la entrada de texto, esto tiene el problema de que cualquier entrada BBCode no jerárquica se transformará en HTML no jerárquico no válido sin error. [ cita requerida ]
La aplicación de técnicas de análisis tradicionales se dificulta debido a las ambigüedades en el marcado, como en [quote=[b]text[/b][/quote]
, donde la entrada puede interpretarse como "texto" citado de alguien llamado [b
, o el texto en negrita "texto" rodeado por [quote=
y [/quote]
, es decir .[quote=text[/quote]