Regex:如何捕获不包括数字的空格/连字符的单词?

2024-09-28 22:39:51 发布

您现在位置:Python中文网/ 问答频道 /正文

我的数据集如下所示:

Column1
-------
abcd - efghi 1234
aasdas - asdas 54321
asda-asd 2344
aasdas(asd) 5234

我想把所有不包括数字的东西都取出来,所以看起来是这样的:

Column2
-------
abcd - efghi
aasdas - asdas
asda-asd
aasdas(asd)

这是我现在的正则表达式:

df['Column2'] = df['Column1'].str.extract('([A-Z]\w{0,})', expand=True)

但它只提取不包括括号和连字符的第一个单词。任何帮助都将不胜感激…谢谢


Tags: 数据truedfextract数字expandabcdcolumn1
2条回答

仅仅删除数字就会留下不需要的空格字符

此列表删除所有数字并保留 空格字符,但从外部删除它们

df['Column2'] = df['Column1'].apply(
                   lambda x: ''.join([i for i in x if not i.isdigit()]).strip())

就像使用replace

df.Column1.str.replace('\d+','')
Out[775]: 
0      abcd-efghi 
1    aasdas-asdas 
2        asda-asd 
3     aasdas(asd) 
Name: Column1, dtype: object
#df.Column1=df.Column1.str.replace('\d+','')

相关问题 更多 >