Python:如何在动态索引下截取子字符串

0 投票
2 回答
1157 浏览
提问于 2025-04-17 06:27

我正在处理一个文件,这个文件里有很多行。我想从中提取一个特定的元素,这个元素的长度可能不一样,而且它前后夹着的字符也不一定是相同的。

举个例子,我想从每一行中提取以“OOO_”开头的内容:

blah blah OOO_128934( blah blah
blah bloop OOO_231 bloop bloop
beep OOO_421398234beep beep

欢迎提供使用或不使用re模块的解决方案!

2 个回答

1

在编程中,有时候我们需要把一些东西放到一个地方,然后再从那个地方拿出来。这个过程就像把东西放进一个盒子里,等需要的时候再打开盒子拿出来。

有些编程语言提供了“容器”这样的工具,帮助我们管理这些“盒子”。容器可以存放多个数据,比如数字、文字或者其他信息。我们可以通过特定的方式来访问这些数据,就像用钥匙打开盒子一样。

在使用这些容器时,我们需要注意它们的类型和大小。不同的容器适合存放不同类型的数据,就像有的盒子适合放书,有的适合放玩具。

总之,理解如何使用这些容器是编程中的一个重要部分,它能帮助我们更好地组织和管理数据。

>>> s = "blah bloop OOO_231 bloop bloop"
>>> next(x for x in s.split() if x.startswith("OOO_"))
'OOO_231'
4

那可能是:

text = """
blah blah OOO_128934( blah blah
blah bloop OOO_231 bloop bloop
beep OOO_421398234beep beep
"""

import re

print re.findall(r'OOO_\d+', text) 
>>> ['OOO_128934', 'OOO_231', 'OOO_421398234']

撰写回答