The biggest problem with that is that it requires some kind of actual heirarchical structure to the page markup. BBCode doesn't provide anything remotely semantic on that front; you wouldn't be able to map, for example, [size=7] to <H1> because there's so much variation in how authors use BBCode to style headings.
Tables would be a more realistic solution to this problem -- not just for actual tabular data, but you could use them to put two blocks of text side by side -- and there must be some kind of BBCode extension for creating tables already.