我有以下代码:

import pandas as pd
s = pd.Series(['toy story (1995)', 'the pirates (2014)'])
print(s.str.extract('.*\((.*)\).*',expand = True))

输出:
     0
0  1995
1  2014

我知道extract函数将两个系列对象的值拉到括号之间。但是我不明白怎么做。'.*\((.*)\).*'到底是什么意思?我认为星号代表通配符,但除此之外,我还很困惑这个表达式到底是怎么回事。

最佳答案

.*\(匹配到第一个(
\).*匹配从)到结束的所有内容
(.*)返回前两次匹配之间的所有内容

10-08 02:18