Python 使用正则表达式分离和提取URL字符串的一部分?
我有一个名为Python 使用正则表达式分离和提取URL字符串的一部分?,python,regex,text,nlp,Python,Regex,Text,Nlp,我有一个名为url的变量df。url中的每个url字符串在url字符串中都有一个唯一的六个字符的字母数字ID。我一直在尝试从所有URL中提取每个字符串的特定部分,article\u id,然后将其作为新变量添加到df 例如,xwpd7w是https://www.vice.com/en_us/article/xwpd7w/how-a-brooklyn-gang-may-have-gotten-crazy-rich-dealing-for-el-chapo 如何根据df中所有URL在/article
url
的变量df
。url
中的每个url字符串在url字符串中都有一个唯一的六个字符的字母数字ID。我一直在尝试从所有URL中提取每个字符串的特定部分,article\u id
,然后将其作为新变量添加到df
例如,xwpd7w
是https://www.vice.com/en_us/article/xwpd7w/how-a-brooklyn-gang-may-have-gotten-crazy-rich-dealing-for-el-chapo
如何根据df中所有URL在/article/
旁边的位置提取文章ID
?是否使用任何方法,正则表达式
到目前为止,我已经做了以下工作:
df.url.str.split()
ex output: [https://www.vice.com/en_au/article/j539yy/smo...
有什么想法吗?应用“str.extract”方法
([^/]+):将连续的非“/”字符分组
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
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