首页 > 解决方案 > 如何在 Python Regex Dataframe 中删除多种特殊字符模式

问题描述

所以我有一个名为的数据框usa_sub_states,其中有一列名为'state'.

在 的列中state有 5 个状态为非字母字符串。

Massachusetts[C]
Pennsylvania[C]
Rhode Island[D]
Virginia[C]
Hawai'i

现在我想知道是否有一种方法可以用空字符串替换所有特殊字符,以便它们都作为常规状态名称出现。

usa_sub_states.state.replace(to_replace=r'[\W]', value='', regex=True, inplace=True) 

但由于某种原因,这删除了该列的所有内容并使其成为空字符串。

标签: pythonregexdataframe

解决方案


您可以使用

usa_sub_states.state.replace(to_replace=r'\[[^][]*]|\W', value='', regex=True, inplace=True)

请参阅正则表达式演示详情

  • \[[^][]*]- ,然后是除and[之外的任何零个或多个字符[]
  • |- 或者
  • \W- 任何非单词字符。

推荐阅读