【发布时间】:2022-01-25 10:08:11
【问题描述】:
假设我有一个字符串a = "a*****cd"。有没有办法将它变成"a*cd" 对于任何数量的“*”而没有多个循环? “*”是唯一需要“压缩”的字符,因此解决方案在这方面不必是通用的。
【问题讨论】:
-
请提供足够的代码,以便其他人更好地理解或重现问题。
假设我有一个字符串a = "a*****cd"。有没有办法将它变成"a*cd" 对于任何数量的“*”而没有多个循环? “*”是唯一需要“压缩”的字符,因此解决方案在这方面不必是通用的。
【问题讨论】:
import re
a = "a***********cd"
a = re.sub("\*+", "*", a)
让我解释一下:
re.sub 函数替换正则表达式(第一个参数)的所有匹配:"\*+"(一个或多个星号)在字符串 a(第三个参数)中用“*”(第二个参数)
【讨论】: