APOEPICALM1([A-Z])\w+APOE([A-Z][^<]+)<') 这会将所有匹配项存储为数据帧的 new_col 中的列表。 关于python - 在 py-6ren">
gpt4 book ai didi

python - 在 python pandas 中返回字符串中正则表达式的多个匹配项

转载 作者:太空宇宙 更新时间:2023-11-03 17:17:32 24 4
gpt4 key购买 nike

我正在尝试提取字符串中 "><"之间包含的所有匹配项

下面的代码仅返回字符串中的第一个匹配项。

In:    
import pandas as pd
import re
df = pd.Series(['<option value="85">APOE</option><option value="636">PICALM1<'])
reg = '(>([A-Z])\w+<)'
df2 = df.str.extract(reg)
print df2

Out:
0 1
0 >APOE< A

我想返回“APOE”和“PICALM1”,而不仅仅是“APOE”

感谢您的帮助!

最佳答案

import re
import pandas as pd
df['new_col'] = df['old_col'].str.findall(r'>([A-Z][^<]+)<')

这会将所有匹配项存储为数据帧的 new_col 中的列表。

关于python - 在 python pandas 中返回字符串中正则表达式的多个匹配项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33527920/

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