You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python正则表达式移除字符串:q=及后续内容问题求助

解决正则移除":q="及后续文本的问题

你的问题出在正则表达式的匹配范围上:你用的r':q=.?'里,.?仅会匹配0个或1个任意字符,所以只能删掉:q=本身或者:q=加后面一个字符,没法覆盖后续所有内容。

要移除从:q=开始到字符串末尾的所有内容,把正则改成r':q=.*'就行:

  • .*表示匹配任意数量(0到无穷)的任意字符(默认不包含换行),会直接匹配到字符串结尾。

修改后的代码:

import re

string = ":example1:q=dfgghp-yoirjl78/-"

print(string)

x = re.sub(r':q=.*','', string)
print(x)  # 输出: :example1

如果你的字符串里包含换行,需要加上re.DOTALL标志,让.能匹配换行符:

x = re.sub(r':q=.*','', string, flags=re.DOTALL)

内容的提问来源于stack exchange,提问作者Joao Beca

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.14 11:42:00