使用正则表达式/ python添加html标签,子代码不起作用

时间:2019-03-30 20:23:48

标签: python html regex

所以我有一个作业,需要在诗中添加HTML标记,并且我希望每一行都有一个带有类ID的段落标记。我已经编写了代码,但是当我打印它时,它没有显示。

我为每行创建了一个regex(re)子项,当该行是一个空列表项时,该子行再次开始。然后,我在循环之后打印列表,但是它看起来与循环之前相同。为什么会这样?

我也在regex101上尝试了sub的第一部分,因此它应该抓住整个句子。第二个应包含句子中的所有内容,但要添加p标记。 \ 1用于指代(。+)

textList = text.split("\n")

sentenceCount = 0

for sentence in textList:
    if sentence == "":
        sentenceCount = 0
    elif sentenceCount == 0:
        sentence = re.sub(r"^(.+)$", r"<p class=\"a\">\1</p>", sentence)
        sentenceCount += 1
    elif sentenceCount == 1:
        sentence = re.sub(r"^(.+)$", r"<p class=\"b\">\1</p>", sentence)
        sentenceCount += 1
    elif sentenceCount == 2:
        sentence = re.sub(r"^(.+)$", r"<p class=\"a\">\1</p>", sentence)
        sentenceCount += 1
    elif sentenceCount == 3:
        sentence = re.sub(r"^(.+)$", r"<p class=\"b\">\1</p>", sentence)
        sentenceCount += 1
    elif sentenceCount == 4:
        sentence = re.sub(r"^(.+)$", r"<p class=\"b\">\1</p>", sentence)
        sentenceCount += 1
    elif sentenceCount == 5:
        sentence = re.sub(r"^(.+)$", r"<p class=\"c\">\1</p>", sentence)
        sentenceCount += 1
    elif sentenceCount == 6:
        sentence = re.sub(r"^(.+)$", r"<p class=\"c\">\1</p>", sentence)
        sentenceCount += 1

print(textList)

这是此问题的代码部分。 textList变量工作正常,问题出在某个地方的for循环。

0 个答案:

没有答案