python - 了解熊猫系列提取函数中的正则表达式
问题描述
我有以下代码:
import pandas as pd
s = pd.Series(['toy story (1995)', 'the pirates (2014)'])
print(s.str.extract('.*\((.*)\).*',expand = True))
输出:
0
0 1995
1 2014
我知道提取函数正在为两个系列对象提取括号之间的值。但是我不明白怎么做。究竟是什么'.*\((.*)\).*'
意思?我认为星号代表通配符,但除此之外,我对这个表达式的实际情况感到非常困惑。
解决方案
.*\(
匹配所有内容,直到第一个(
\).*
匹配从)
到最后的所有内容
(.*)
返回前两场比赛之间的所有内容
推荐阅读
- methods - 方法声明中不应该有冒号(':')吗?
- .net - 无法使用 HidLibrary 找到连接的 HID 设备
- c# - 调用 actionContext.Request.Content.ReadAsStringAsync().Result 是否会阻止自定义模型绑定器中的任何内容?
- c# - 如何检查 API 进程的当前状态
- python - 如何改变python图中两个类点的颜色?
- angular - Observable 中返回的对象的合适模式和类型
术后手术后 - types - 没有构造函数的 Purescript `data` 类型是什么意思?
- java - 为什么数据源不匹配从 TomEE 1.7.4 迁移到 8.0.0-M2?
- c# - 表单提交获取空模型
- c++ - 使用 BOOST_DLL_ALIAS 时了解并修复此错误消息