Недавно понадобилось узнать значение между тэгов bb кодов, например: [hide]hiddentext[/hide] получилась вот такая вот регулярка:

(\[([\w\d\s]+\])([\w\d\s]+)\[\/\2)

Усложнять получением атрибутов не стал.
Ну и ссылочка для наглядного понимания: тынц

Посложнее:  тынц