python ubb

琐碎记事 · 2023-06-08

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
Theme Jasmine by Kent Liao
辽ICP备2021009421号-2