Python自定义文本到html语法

2024-04-26 10:06:41 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试为我的用户创建一个自定义语法来格式化一些html

因此用户可以输入如下内容:

**some text here**
the some more text down here
**Another bunch of stuff**
then some other junk

and I get:

<h1>some text here</h2>
<p>the some more text down here</p>
<h1>Another bunch of stuff</h1>
<p>then some other junk</p>

希望留下一些空间来弥补其他标签,因为我需要他们

编辑: 因此,我的问题是如何编写regex函数来转换一些给定的文本,并让它找到打开和关闭**的每个实例,并用适当的or标记替换它们。 我有: 进口re

标题模式=重新编译(r’(?)?P**)(?P.*)(?P**)',关于多行)你知道吗

def format_headers(text):
    def process_match(m):
        return "<h2>%s</h2>" % m.group('header')

    new_text = header_pattern.sub(process_match, text)

    print new_text
但是这只会抓住第一个和最后一个**,而忽略中间的一个。你知道吗


Tags: ofthetext用户heremoreanothersome
2条回答

使用一些标准溶液。比如降价。它是最好的。你知道吗

要匹配头字符串,请使用r'\*\*(.*?)\*\*'。参见示例

>>> re.sub(r'\*\*(.*?)\*\*','<h1>\\1</h1>', '**some text here** and **another**')
'<h1>some text here</h1> and <h1>another</h1>'

你有没有理由不能使用像Cheetah这样简单的模板语言,甚至把逻辑构建到处理程序中?Cheetah允许您创建一个模板对象,其中包含一组用于操纵HTML的方法。 几周前,当我尝试使用CherryPy创建网页时,我遇到了一个类似的问题,在教程中,我找到了Cheetah模板,它使编写表单变得更加容易!你知道吗

相关问题 更多 >