import re
class UBB:
def __init__(self):
self.patterns = [
(r'\[b\](.*?)\[/b\]', r'<strong>\1</strong>'),
(r'\[i\](.*?)\[/i\]', r'<em>\1</em>'),
(r'\[u\](.*?)\[/u\]', r'<u>\1</u>'),
(r'\[s\](.*?)\[/s\]', r'<s>\1</s>'),
(r'\[url=(.*?)\](.*?)\[/url\]', r'<a href="\1">\2</a>'),
(r'\[url\](.*?)\[/url\]', r'<a href="\1">\1</a>'),
(r'\[img\](.*?)\[/img\]', r'<img src="\1">'),
(r'\[code\](.*?)\[/code\]', r'<code>\1</code>'),
(r'\[quote\](.*?)\[/quote\]', r'<blockquote>\1</blockquote>'),
(r'\[list\](.*?)\[/list\]', r'<ul>\1</ul>'),
(r'\[\*\](.*?)\n', r'<li>\1</li>')
]
def convert(self, text):
for pattern, replacement in self.patterns:
text = re.sub(pattern, replacement, text)
return text