Python中带计数变量的正则表达式?

2024-05-16 22:36:23 发布

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

我想在不更改未标记页码的情况下调整文本中未标记的章节号(以便以后删除它们)。我打算使用一个regex语句,包括一个由递增的章节号组成的变量来实现这一点

文本字符串如下所示:

“导言案文

一, 第一章标题

第一章案文 192(页码) 第1章文本更多 193

二, 第二章标题

第2章案文 194 等等”

将变量chapter\u fix=1与chapter\u fix=chapter\u fix=+1的运算符结合使用 我希望将正则表达式字符串'\n1\n', '\n2\n', '\n3\n'...转换为'\n365\n',并将其转换为'\nChapter 1\n', '\nChapter 2\n', '\nChapter 3\n'...转换为'\nChapter 365\n'的字符串,而不修改不在同一数字序列中的随机页码

不幸的是,我是一个业余程序员,尽管我花了几个小时研究这个问题,并且在类似的正则表达式问题上有一些基础,但我真的无法理解它。坦率地说,我甚至没有任何可用的代码作为示例,但我非常感谢您的帮助,帮助我更好地了解这一点

我在下面列出了我当前的、极不正确的代码。这次我只是想手动进行调整,但如果有人能帮我的话,我还是想学着做正确的调整

###Module imports###
import re

text = '''
Intro Text

SECTION I
Section I Title
118

1
Chapter 1 Title
119
text

121
text

122

2
Chapter 2 Title
text
'''
###Function Definitions###

def chapter_correction (text):
      
    chapter_correction = 1
    pattern = r'\n{}\n'.format(chapter_correction)
    print(pattern)
    text = re.sub(pattern, text, chapter_correction, flags=re.IGNORECASE)
    chapter_correction += 1
    return text

text = chapter_correction (text)
print(text)

Tags: 字符串代码text文本re标题titlefix