gpt4 book ai didi

python - 正则表达式 - 抓取带有句点 1.1、1.1.1 等的部分

转载 作者:行者123 更新时间:2023-12-05 03:18:24 26 4
gpt4 key购买 nike

我正在尝试使用正则表达式从具有编号标题的文档部分之间获取文本。该文档有目录和章节标题,章节编号中带有句点。例如:1. 简介,1.1 某事,1.1.1 其他我能够很好地解析 TOC,只得到节号(1.1、1.1.1 等),但未能尝试解析这两个数字之间的文档文本。

考虑以下内容(假设文档文本只是一个大字符串):

1.1 Introduction
There are some sentences in here that I want and I want to do other things with them. There could be hundreds of sentences, who cares.
1.1.1 Something Else
This is where we talk about something else in life.
...
5.1.1 Conclusion

例如,我尝试了以下方法来获取 1.1 和 1.1.1 之间的文本以及此类的一些变体,但似乎卡住了。

(?s)1\.0(.*)1\.1

如果文档中只有第 1.0 和 1.1 节,则此方法有效,但由于我没有那么奢侈....非常感谢任何帮助。

最佳答案

使用 re.split 使用正则表达式拆分数字,如下所示。

^\d+(?:\.\d+)*

这匹配一位或多位数字 \d+ 后跟零次或多次出现的子模式,句点后跟一位或多位数字 (?:\.\d+)*.

结果列表的项目是数字之间的文本,包括标题行本身的文本。

如果您也需要节号,请在正则表达式中使用捕获模式(在上面添加括号)。然后列表将包含节号和它们之间的文本。偶数项是中间的文本,奇数项是节号。

关于python - 正则表达式 - 抓取带有句点 1.1、1.1.1 等的部分,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/73709821/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com