我很难从字符串中提取 ID 号。
我可以使用索引来获取它,但是对于数据帧的其他行它会失败。
如何以适用于所有行的方式提取 campaignid=351154190
。
唯一的模式是单词 campaignid
,需要提取并存储在数据帧的新列中。性能在此任务中并不重要。
原始字符串
https:_utm_source=googlebrand&utm_medium=ppc&utm_campaign=brand&utm_campaignid=3
51154190&keyword=aihdisadjiajdutm_matchtype=e&device=m&utm_network=g&utm_adposit
ion=1t1&geo=9027258&gclid=CjwKCsadjjsaopdl[psdklksfdosjfidj9FOk033DKW1xoCXlwQAvD
_BwE&affiliate_id=asdaskdosjadiasjdisaj-asdhasuigdyusagdyusagyk033DKW1xoCXlwQAvD_BwE&utm_content=search&utm_contentid=1251489456158180&placement&extension
拆分字符串x= cw.captureurl.str.split('&').str[:-1]
打印一行print(x[25])
['https:_utm_source=googlebrand', 'utm_medium=ppc', 'utm_campaign=brand',
'utm_campaignid=35119190', 'keyword=co',
'utm_matchtype=e', 'device=m', 'utm_network=g', 'utm_adposition=1t1',
'geo=9027258', 'gclid=CjwKCAjwnMTqBRAzEiwAEF3ndo3-
CNOsp1VT5OIxm0BuUcSWQEwtJSR5KLiJzrvjjc9FOk033DKW1xoCXlwQAvD_BwE',
'affiliate_id=CjwKCAjwnMTqBRAzEiwAEF3ndo3-
CNOsp1VT5OIxm0BuUcSWQEwtJSR5KLiJzrvjjc9FOk033DKW1xoCXlwQAvD_BwE',
'utm_content=search', 'utm_contentid=1211732930', 'placement']
如果我可以使用可以搜索“campaignid”这个词的东西(我的目标是什么),那就太好了然后将其存储在某个数据帧的另一列中。
我尝试在拆分后进行拆分,但没有用
我尝试将 for 循环与 if 语句一起使用,但也没有用。
最佳答案
使用正则表达式:
campaign_id = cw['captureurl'].str.extract('campaignid=(\\d+)')[0]