我有一个pandas列,其中包含以下数据:
function(tb3696,[1,1,1,0],'glpK',"ATP:glycerol 3-phosphotransferase")
function(tb3255,[1,1,1,0],'manA',"mannose-6-phosphate isomerase")
function(tb3441,[1,1,1,0],'mrsA',"phosphoglucomutase or phosphomannomutase")
function(tb118,[1,1,1,0],'oxcA',"oxalyl-CoA decarboxylase")
我需要从上面的专栏中提取以下文本:
tb3696
tb3255
tb3441
tb118
我尝试了以下操作,但不起作用:
df[0].str.extract('tion( (.+?) ,[',expand=False)
您可以使用
df[0].str.extract(r'((w+),', expand=False)
请参阅regex演示。
正则表达式匹配(
和,
字符之间的一个或多个字母/数字/下划线。由于Series.str.extract
需要正则表达式模式中的捕获组,因此w+
用两个unscape捕获括号括起来。