Python中文
首页
教程
问答
标签
搜索
登录
注册
使用字典替换Python正则表达式
回答此问题可获得
20
贡献值,回答如果被采纳可获得
50
分。
<p>我有以下正则表达式来解析括号内的访问字符串并将其删除:</p> <pre><code>>>> a = 'a[b]cdef[g ]hi[ j]klmno[ p ]' >>> re.sub(r'\[\s?(.*?)\s?\]',r'\1',a) 'abcdefghijklmnop' </code></pre> <p>但我想做的是把括号里的东西作为字典的目标。假设我有以下字典:</p> ^{pr2}$ <p>当我运行所需的regex时,它应该打印字符串:<code>'a2cdef7hi10klmno16'</code></p> <p>但是,我不能简单地让<code>sub</code>的替换部分是<code>d['\1']</code>,因为会有一个<code>KeyError: '\x01'</code>。在</p> <p><strong>有没有简单的方法可以用响应regex中捕获的字典来替换模式?</strong></p>
0 条评论
分类:
Python问答
请先
登录
后评论
默认排序
时间排序
1 个回答
匿名
1天前
擅长:python、mysql、java
<pre><code>newstring = [(d[i] if i in d else i) for i in string] re.sub(r'\[\s?(.*?)\s?\]',r'\1',a) </code></pre> <p>如果字典的值也是字符串,那么应该先替换字符,然后去掉括号。如果没有,只需将d[i]替换为str(d[i])。在</p>
请先
登录
后评论
针对此问题:
更多的回答
关注
89
关注
收藏
1
收藏,
216
浏览
网友 提问于 2天前
相关Python问题
文本导入时标题行中的特殊字符
5 回答
文本小部件:在没有输入时更新并在循环后保持空闲
6 回答
文本小部件tkin
3 回答
文本小部件tkinter中的标签更改或文本外观更改是否有撤消功能?
5 回答
文本小部件tkinter复制图像选项
9 回答
文本小部件上的Python Tkinter ttk滚动条未缩放
2 回答
文本小部件上的滚动条可能需要根据制表符ord显示前进行滚动
6 回答
文本小部件不显示lis中的内容
7 回答
文本小部件不显示Unicode字符
3 回答
文本小部件中写入的行间距
4 回答
文本小部件中的文本作为变量
1 回答
文本小部件中的滚动条仅显示在底部
9 回答
文本小部件中的选项卡键空间计数
9 回答
文本小部件作为Lis
1 回答
文本小部件在主框架中扩展列宽
9 回答
文本小部件未使用删除功能清除
5 回答
文本小部件滚动动画(Tkinter、Python)
4 回答
文本居中。格式正确吗?
10 回答
文本差分算法
9 回答
文本已知时音频文件中的单词索引
2 回答