将以一个字符开头并以另一个字符结尾的文本提取到 python 中的新列中

Extracting the text starting with a character and ends with another into new column in python

我正在尝试从列中给定的 link 中提取 ID。

ID在“tt”之后开始,在“/”之前结束。正在尝试将其提取到新列中。

输入数据集:

输出数据集:

如果要修改 link,请使用带 str.replace 的正则表达式:

df['Link'] = df['Link'].str.replace(r'(.*/title/tt)(\d+)(/.*)', r'/ ')

如果正如我所相信的那样,您的示例不正确并且您实际上想要创建一个新列,其编号为:

df['ID'] = df['Link'].str.extract(r'(?:.*/title/tt)(?P<ID>\d+)(?:/.*)')

输出:

     Movie                                                   Link       ID
0  movie 1  http://www.imdb.com/title/tt0114709/?ref_=fn_tt_tt_1|  0114709