Python中文
首页
教程
问答
标签
搜索
登录
注册
Python:用variab替换精确匹配的子字符串
回答此问题可获得
20
贡献值,回答如果被采纳可获得
50
分。
<p>我有一个字符串列表,如<code>'cdbbdbda', 'fgfghjkbd', 'cdbbd'</code>等。我还有一个从另一个字符串列表馈送的变量。我需要的是用<code>b</code>替换第一个列表字符串中的一个子字符串,比如<code>b</code>替换为<code>z</code>,只有在它前面加上变量列表中的一个子字符串时,所有其他的出现都将被忽略。 我所拥有的:</p> <pre><code>a = ['cdbbdbda', 'fgfghjkbd', 'cdbbd'] c = ['d', 'f', 'l'] </code></pre> <p>我的工作:</p> ^{pr2}$ <p>我需要的是:</p> <pre><code>'cdzbdzda' 'fgfghjkbd' 'cdzbd' </code></pre> <p>我得到的是:</p> <pre><code>'cdzzdzda' 'fgfghjkbd' 'cdzzd' </code></pre> <p>“b”的所有实例都将被替换。 我是新手,欢迎任何帮助。在Stackoverflow上寻找答案,我发现了很多基于单词边界的regex或使用<code>re</code>的解决方案,或者使用基于<code>count</code>的<code>str.replace</code>的解决方案,但是我不能使用它,因为字符串的长度和“b”的出现次数可能不同。在</p>
0 条评论
分类:
Python问答
请先
登录
后评论
默认排序
时间排序
1 个回答
匿名
1天前
擅长:python、mysql、java
<p>您可以使用列表理解:</p> <pre><code>import re a = ['cdbbdbda', 'fgfghjkbd', 'cdbbd'] c = ['d', 'f', 'l'] new_a = [re.sub('|'.join('(?<={})b'.format(i) for i in c), 'z', b) for b in a] </code></pre> <p>输出:</p> ^{pr2}$
请先
登录
后评论
针对此问题:
更多的回答
关注
89
关注
收藏
1
收藏,
216
浏览
网友 提问于 2天前
相关Python问题
如何添加虚拟方法
10 回答
如何添加表示整数的擦边字符串?
1 回答
如何添加要在Bokeh中使用的新font.ttf文件?
8 回答
如何添加要显示的矩阵XY轴编号和XY轴
9 回答
如何添加计数?
2 回答
如何添加计数器函数?
4 回答
如何添加计数器列来计算数据帧中另一列中的特定值?
4 回答
如何添加计数器来跟踪while循环中的月份和年份?
7 回答
如何添加计数并删除countplot的顶部和右侧脊椎?
4 回答
如何添加计时器wx.应用程序更新窗口对象的主循环?
4 回答
如何添加评论到帖子?PostDetailVew,Django 2.1.5
6 回答
如何添加评论拉梅尔亚姆
4 回答
如何添加诸如矩阵Python/Pandas之类的数据帧?
10 回答
如何添加谷歌地点自动完成到Flask?
8 回答
如何添加超时、python discord bot
7 回答
如何添加超过1dp的检查
3 回答
如何添加距离方法
10 回答
如何添加跟随游戏的敌人精灵
3 回答
如何添加路径以便python可以找到程序?
1 回答
如何添加身份验证/安全性以使用happybase访问HBase?
3 回答