我有一个长字符串列表,如下所示,我需要提取一个字符串子集并另存为新,列出每个长字符串中两个标记之间的字符。例如,我的两个字符串看起来像这样,使用“.power”作为标记,前面使用“.power”。
'\\\\porfiler03\\\\gtdshare\\\\VORTEX\\\\OBS\\\\ALL\\999999.Brazil.BRASIL.CAETITE III.Power.csv'
'\\\\porfiler03\\\\gtdshare\\\\VORTEX\\\\OBS\\\\ALL\\999999.Brazil.BRASIL.SANTANA II.Power.csv'
我需要提取每个长列表的子集,像这样在“。还有“.力量”-
CAETITE III
SANTANA II
我提取所有长字符串列表的代码(路径和文件名)如下所示:
import pandas as pd
import glob
from sys import exit
pd.set_option('display.max_columns', None)
path = r'\\porfiler03\\gtdshare\\VORTEX\\OBS\\ALL\\' # use your path
all_files = glob.glob(path + "/*BRASIL*.csv")
li = []
for filename in all_files:
df = pd.read_csv(filename, index_col=None, header=0)
li.append(filename)
frame = pd.concat(li, axis=0, ignore_index=True)
exit()
>>> filename = '\\\\porfiler03\\\\gtdshare\\\\VORTEX\\\\OBS\\\\ALL\\999999.Brazil.BRASIL.CAETITE III.Power.csv'
使用re.sub
:
>>> import re
>>> re.sub(r'.*\.(.*)\.Power.*', r'\1', filename)
'CAETITE III'
使用拆分
:
>>> filename.split('.')[-3]
'CAETITE III'
或者可能:
>>> (lambda a: a[a.index('Power')-1])(filename.split('.'))
'CAETITE III'
我正在尝试从 html 标签中提取字符串 我知道还有其他类似或甚至相同的问题得到了回答,但这些问题的答案似乎对我不起作用 此输出 不 注意,我使用了来自不同答案的其他正则表达式,得到了相同的结果,我也不熟悉正则表达式,所以这可能是一个无意义的问题。
问题内容: 假设我有一个字符串,而我只想提取一部分。 我只知道我感兴趣的部分之前和之后的几个字符1234。 使用字符串可以执行以下操作: 结果,这会给我。 如何在Python中做同样的事情? 问题答案: 使用正则表达式- 文档以供进一步参考 要么:
我想从url字符串中提取子字符串。这是url: 我想开始从id中提取= 直到破折号(-),然后提取剩余的子字符串 请注意,确切的域不是上面的域,这只是一个示例。 有什么想法吗?我非常感谢你的帮助。谢谢 更新: 这就是我到目前为止所做的: 但它只是公开了/pi。
问题内容: 我尝试获取<%=和%>之间的字符串,这是我的实现: 它返回 但我的期望是: 我在哪里错了以及如何纠正它? 问题答案: 您的模式很好。但是,您不应该轻信它,应该这样做。以下代码提供了您正在寻找的输出:
问题内容: 数据如下所示: 我希望它看起来像这样: 摆脱一个或另一个很简单。 这: 给我这样的建议:倡议:可信来源倡议:及时的倡议:数据库规范化 还有这个: 给我这个: 很难弄清楚如何将两者结合起来。 问题答案: 只是使用怎么样? 或者,如果您不知道前缀有多长时间: 这是一个。