python - 如何创建自己的标点符号列表以在 python 中删除
问题描述
我想从不同类型的脚本中删除标点符号,英语,阿拉伯语等等以及任何不是我不想要的字母的东西,所以有没有办法使用相同的方法str.replace来创建你自己的标点符号列表
我目前正在使用它删除所有标点符号
dataframe['columnname'].str.replace('[^\w\s]', '')
但是当我尝试替换我想要的列表时它不起作用有没有办法创建我自己的列表
dataframe['columnname'].str.replace(',,?, !, .,:, ;', '')
所以有什么,?!. : ; ' 将被删除,并且此范围之外的任何其他内容都将保留
解决方案
这是必要的 espace 一些特殊的正则表达式字符,如.
or ?
:
dataframe['columnname'] = dataframe['columnname'].str.replace("[,\?!\.:;']", '')
或使用re.escape
:
import re
pat = '[' + re.escape(",?!.:;'") + ']'
print (pat)
[,\?!\.:;']
dataframe['columnname'] = dataframe['columnname'].str.replace(pat, '')
推荐阅读
- ios - 如果我们在后台点击任何地方,除了在 swift 中点击 popView 之外,如何删除 popView
- tomcat - Apache tomcat 如何创建指向 url 的链接
- algorithm - Lua(trAInsported):尝试实现波前算法,不工作
- sql-server - 如何将捕获的 SQL 探查器“exec sp_executesql”映射到 sql server 中的存储过程名称
- javascript - 提取正则表达式名称的一部分
- oracle - 从 plsql 代码重定向到新选项卡中的 url
- javascript - 为什么当主 JS 线程每 50ms 接收来自 web worker 的消息并简单地 console.logs 时,堆内存会无限增加?
- nginx - 如何根据某些查询参数有条件地在位置部分设置 cookie
- slack - Slack OAuth:本地测试请求的权限无效
- java - 从数组列表中返回字符串值