我有一个带有2列URL的Panda数据框,并具有如下注释: URL列的值包含许多URL comment1 ==> https://www.example1.com/jjdf;https://www.example2.com/jjdss;https://www.example3.com/jjd;ddzd;https://www.example4.com/jj;
我想将列URL的值拆分为行,以便获取:
评论1 ==> https://www.example1.com/jjdf
评论1 ==> https://www.example2.com/jjdss
评论1 ==> https://www.example3.com/jjd;ddzd
评论1 ==> https://www.example4.com/jj
我尝试下面的代码看起来不错,因为它被if provider_years_in_practice_list:
list_result = [int(i[0].upper) for i in provider_years_in_practice_list if
i[0] and i[0].upper]
分割了,但是我的问题是有些URL包含;
,所以当我被;
分割时,表明URL的开头,结果不理想,因为它删除了;http
。我希望找到一种方法来删除http
,同时保留;
。
http
答案 0 :(得分:0)
我建议您做这样的事情:
s = s.replace(";http", "|http")
comments = s.split("|")
我使用单个字符串尝试了此操作,但是您正在使用df.url.str,因此我认为您正在使用字符串,它可能是正确的。
此外,我使用|
是因为通常它不会出现在URL中,但是您应该使用URL中不存在的任何字符。
因此,首先您应该尝试s.find("|")
,如果有该字符,请对其进行更改。使用find
时,如果字符不在字符串中,则返回-1。
最后,您仍然应该拥有之前没有替换过的最终;
。
希望有帮助。