如果配置不正确,我想将“持活”改为“保持活着的1060”,如果找不到“保持活着”,则插入“保持活着的1060”。
到目前为止,我已经想出了这一点,但是在找到并替换“保持活动”时,它仍然会插入每个空白行:
^keepalive(?!(\s[[:digit:]]{1,3}){2}).*\n|((?<!keepalive)^$(?!keepalive))场景1:
keepalive 60
resolv-retry infinite预期:
keepalive 60 90
resolv-retry infinite结果:
keepalive 60 90
keepalive 60 90
resolv-retry infinite场景2:
resolv-retry infinite预期:
keepalive 60 90
resolv-retry infinite结果:
keepalive 60 90
keepalive 60 90
resolv-retry infinite我是非常缺乏经验的regex,并将真正感谢任何指导和提示!
发布于 2020-03-23 03:35:06
分两步进行:
步骤1:通过删除“保持活的60”来规范文本
re.sub(r"keepalive +\d{2}","", your_str)
#Adjust for "\n" as necessary第二步:将“解析-重试无限”替换为您想要的任何内容。
re.sub(r"resolv-retry infinite","whatever your want", your_str)
#adjust for "\n" as necessary https://stackoverflow.com/questions/60800778
复制相似问题