gpt4 book ai didi

python - 替换位于之间的字符串

转载 作者:太空狗 更新时间:2023-10-29 17:42:53 25 4
gpt4 key购买 nike

这是我的问题:在一个包含逗号的文本变量中,我尝试只删除位于两个字符串之间的逗号(实际上是 []) .例如使用以下字符串:

input =  "The sun shines, that's fine [not, for, everyone] and if it rains, it Will Be better."
output = "The sun shines, that's fine [not for everyone] and if it rains, it Will Be better."

我知道如何对整个变量使用 .replace,但我不能对它的一部分使用它。这个网站上有一些主题,但我没有设法利用它们来解决我自己的问题,例如:

最佳答案

import re
Variable = "The sun shines, that's fine [not, for, everyone] and if it rains, it Will Be better."
Variable1 = re.sub("\[[^]]*\]", lambda x:x.group(0).replace(',',''), Variable)

首先您需要找到需要重写的字符串部分(使用re.sub 执行此操作)。然后重写这些部分。

函数var1 = re.sub("re", fun, var)的意思是:找到变量var中所有符合"re的子串";使用函数 fun 处理它们;返回结果;结果将保存到 var1 变量中。

正则表达式“[[^]]*]”的意思是:查找以[(\[ in re)开头的子串,包含除以外的所有内容]([^]]* in re)并以 ](\] in re)结尾。

对于每一个发现的事件运行一个函数,将这个事件转换成新的东西。函数是:

lambda x: group(0).replace(',', '')

这意味着:取找到的字符串 (group(0)),将 ',' 替换为 ''(删除 >, 换句话说)并返回结果。

关于python - 替换位于之间的字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11096720/

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