小编Sta*_*ser的帖子

如何在Python中使用正则表达式非捕获组格式

在下面的代码中,我只想获取“-”和“ u”之间的数字。我以为我可以应用正则表达式非捕获组格式(?:…)来忽略从'-'到第一位的所有内容。但是输出总是包含它。如何使用非捕获组格式生成正确的输出?

df = pd.DataFrame(
    {'a' : [1,2,3,4], 
     'b' : ['41u -428u', '31u - 68u', '11u - 58u', '21u - 318u']
    })

df['b'].str.extract('((?:-[ ]*)[0-9]*)', expand=True)
Run Code Online (Sandbox Code Playgroud)

在此处输入图片说明 在此处输入图片说明

python regex pandas

5
推荐指数
1
解决办法
422
查看次数

标签 统计

pandas ×1

python ×1

regex ×1