gpt4 book ai didi

python - 正则表达式匹配封闭美元符号内所有出现的点

转载 作者:行者123 更新时间:2023-12-01 04:02:10 34 4
gpt4 key购买 nike

我需要替换字符串中由美元符号括起来的所有点。没有嵌套结构,因此我认为正则表达式是实现此目的的正确工具。

示例字符串如下所示:

asdf $asdf.asdf.$ $..asdf$

我想出的正则表达式与美元符号内的部分匹配,但我希望美元符号内的每个点都匹配 (example) :

\$([^$]*)\$

因此对于示例字符串,它应该产生四个匹配项。我怎样才能实现这一目标?

最佳答案

由于您使用的是 Python,最简单的解决方案是使用您的模式来匹配从 $$ 的子字符串,并替换 .任何你想要的 lambda:

import re
s = "a.sdf $asdf.asdf.$. . .$..asdf$"
r = re.compile(r'\$([^$]*)\$')
print(r.sub(lambda m: m.group().replace('.',''), s))
# => a.sdf $asdfasdf$. . .$asdf$

请参阅IDEONE demo

关于python - 正则表达式匹配封闭美元符号内所有出现的点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36305828/

34 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com