我有一个字段,其中一列是消息,有一个字符串,数据如下:-
df['message']
2020-09-23T22:38:34-04:00 mpp-xyz-010101-10-103.vvv0x.net patchpanel[1329]: RTP:a=end pp=10.10.10.10:9999 user=sip:.F02cf9f54b89a48e79772598007efc8c5.@user.com;tag=2021005845 lport=12270 raddr=11.00.111.212 rport=3004 d=5 arx=0.000 tx=0.000 fo=0.000 txf=0.000 bi=11004 bo=453 pi=122 pl=0 ps=0 rtt="" font=0 ua=funny-SDK-4.11.2.34441.fdc6567fW jc=10 no-rtp=0 cid=2164444 relog=0 vxdi=0 vxdo=0 vxdr=0\n
所以我想从数据中提取raddr
,并将其连接回df。
我使用下面的代码进行操作,并认为拆分后其位于位置7:-
df[['raddr']]=df['message'].str.split(' ', 100, expand=True)[[7]]
df['raddr']=df['raddr'].str[6:]
问题出现在一些专栏中,它出现在8点,一些出现在7点,所以在一些专栏中,它给了我一个报告,而不是雷达,因为这个问题
我如何提取它,以便它在字符串搜索中提取它,而不使用拆分
注意:-此外,我希望有一个更快的方法,因为我正在做的猎人数以千计的记录每分钟
您可以使用series.str.extract
该模式只有一个值在等号之后的捕获组。它将捕获任何数字和句点的组合,直到找到其他内容(空格、字母、符号或行尾)
相关问题 更多 >
编程相关推荐