python - 通过向正则表达式添加一些东西来修改另一个正则表达式
问题描述
我正在尝试使用替换来修改我的正则表达式。最终想要做的是在我现有的模式前面添加01/ 。它是用另一个模式替换一个模式。这是我正在做的替换:
df['found_d'].str.replace(pattern2, '1/'+pattern2)
#must be str, not _sre.SRE_Pattern
我想使用sub它需要 3 个参数,目前我不太确定如何使用它。这是预期的输入:
df['found_d']= 01/07/91 or 01/07/1991
我需要在我的模式中添加一个缺失的日期。
解决方案
不需要可调用对象,re
提供在替换期间访问匹配文本的专用方法。
为了将文字附加01/
到模式匹配,请使用\g<0>
对替换模式中整个模式的明确反向引用,而不是使用正则表达式模式:
df['found_d'] = df['found_d'].str.replace(pattern2, r'01/\g<0>')
^^^^^^^^^^^
推荐阅读
- javascript - javascript - 根据内部条件过滤列表
- user-interface - 确定句柄是否指向屏幕元素(而不是打印机等)
- arrays - VBA以不同格式粘贴数组日期值
- c++ - 关于使用 ifstream 判断 C++ 中是否存在文件的问题
- java - 列表视图问题:尝试在空对象引用上调用虚拟方法 'void android.widget.ListView.setAdapter(android.widget.ListAdapter)'
- laravel - 使用默认类别 belongsToMany 创建新帖子
- parsing - 从 .txt 文件中解析文本
- mongodb - 使用 mongodb 和 monstache 进行慢速弹性搜索索引
- angularjs - 尝试创建服务来构建我的 NgTable
- ruby - 删除方法单一!数组中的元素按谓词并返回已删除