正则表达式匹配一个特定的字符串,空格,然后数字(pandas,python)



我的数据帧:

pd.DataFrame({'module_num': ['Assignment Module 6 Due', 'Review of Module 2 Checklist', 'Welcome to Module 7 Chapter 25']})

我是python中正则表达式的新手,我希望可以使用regex和panda获得以下输出:

pd.DataFrame({'module_num': ['Module 6', 'Module 2', 'Module 7']})

所以,我试图在字符串";模块";以及后面的数字。在任何情况下,Module和数字之间都有一个空白。

使用,Series.str.extract

regex demo

df.module_num.str.extract("(Module d+)")

0
0  Module 6
1  Module 2
2  Module 7

使用后面跟着空白和数字的命名组到.str.extract

df.module_num.str.extract('(?P<module_num>Modulesd)')

module_num
0  Module 6
1  Module 2
2  Module 7

它的工作原理(?P<name>group)捕获按名称引用的命名组。名称必须是以字母开头的字母数字序列。

s用于空白

d数字专用字符。

最新更新