【问题标题】:separating and extracting part of strings of URLs using regex?使用正则表达式分离和提取部分 URL 字符串?
【发布时间】:2019-10-10 16:55:58
【问题描述】:

我有一个df,变量名为urlurl 中的每个 url 字符串在 URL 字符串中都有一个唯一的六字符字母数字 ID。我一直在尝试从所有 url 中提取每个字符串的特定部分 article_id,然后将其添加到 df 作为新变量。

例如,xwpd7warticle_idhttps://www.vice.com/en_us/article/xwpd7w/how-a-brooklyn-gang-may-have-gotten-crazy-rich-dealing-for-el-chapo

如何根据/article/ 旁边的位置从df 中的所有url 中提取article_ids?使用任何方法,正则表达式与否?

到目前为止,我已经完成了以下工作:

df.url.str.split()

ex output: [https://www.vice.com/en_au/article/j539yy/smo...

df['cutcurls'] = df.url.str.join(sep=' ')
ex output: h t t p s : / / w w w . v i c e . c o m / e n

有什么想法吗?

【问题讨论】:

    标签: python regex text nlp


    【解决方案1】:

    应用“str.extract”方法。

    df=pd.DataFrame({"url":["https://www.vice.com/en_us/article/xwpd7w/how-a-brooklyn-gang-may-have-gotten-crazy-rich-dealing-for-el-chapo","https://www.www.www//en_us/article/idId2019/buzzwords"]}) 
    
    df["articel_id"]= df.url.str.extract(r"/article/([^/]+)")
    
        Out:
            url articel_id
            0  https://www.vice.com/en_us/article/xwpd7w/how-...     xwpd7w
            1  https://www.www.www//en_us/article/idId2019/bu...   idId2019
    

    ([^/]+): 对连续的非'/'字符进行分组

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-11-04
      • 2021-12-30
      • 2011-07-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-12-31
      • 1970-01-01
      相关资源
      最近更新 更多