拆分URL列表而不删除定界符

时间:2019-07-25 10:04:58

标签: pandas

我有一个带有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

1 个答案:

答案 0 :(得分:0)

我建议您做这样的事情:

s = s.replace(";http", "|http")
comments = s.split("|")

我使用单个字符串尝试了此操作,但是您正在使用df.url.str,因此我认为您正在使用字符串,它可能是正确的。 此外,我使用|是因为通常它不会出现在URL中,但是您应该使用URL中不存在的任何字符。 因此,首先您应该尝试s.find("|"),如果有该字符,请对其进行更改。使用find时,如果字符不在字符串中,则返回-1。 最后,您仍然应该拥有之前没有替换过的最终;

希望有帮助。