属性错误:“str”对象没有属性“str”

时间:2021-04-11 08:15:49

标签: python regex pandas string

我有一个包含 URL 的数据框列。我想通过对每一行使用正则表达式模式来从此 URL 中提取特定字符串。以下是 URL 字符串的示例:

'www.abcdef.com/sports-bra-sports-bra-black-abcde1f02-c11.html',

由于一列是一个系列,我需要遍历,我尝试了以下代码:

1.

for i in df['landing_screen_name']:
    regex = i.str.extract(r'.{0,13}.html')
    print(regex)
    break

2.

for idx, row in df.iterrows():
    a = row['landing_screen_name'].str.contains(r'.{0,13}.html')
    print(a)
    break

但是我得到了以下错误:

AttributeError: 'str' object has no attribute 'str'

我已经尝试了所有方法但仍未找到问题,请您帮我解决这个问题吗?

2 个答案:

答案 0 :(得分:2)

试试这个:

df['landing_screen_name'] = df['landing_screen_name'].str.extract(r'(.{0,13}\.html)')

答案 1 :(得分:0)

您应该在列级别进行操作,例如使用:

print(df['landing_screen_name'].str.extract(r'.{0,13}.html').to_string(index=False))