Python 拆分字符串并用成分替换原始字符串

Python 拆分字符串并用成分替换原始字符串,python,string,replace,Python,String,Replace,假设我在一个输入文件中读取了字符串“Taco>Bell”,我想用“Taco>”和“Bell”替换该字符串。换句话说,我想用两个字符串替换一个字符串。我知道如何使用带有正则表达式的split方法来拆分字符串,但是如何执行替换 每次有一个字符串后跟一个非空格字符“>”,我想在字符之间插入一个空格 在这种情况下,您需要向前看,如下所示: import re mystring = "John likes to eat Taco>Bell because it is Bar>Foo heal

假设我在一个输入文件中读取了字符串“Taco>Bell”,我想用“Taco>”和“Bell”替换该字符串。换句话说,我想用两个字符串替换一个字符串。我知道如何使用带有正则表达式的split方法来拆分字符串,但是如何执行替换


每次有一个字符串后跟一个非空格字符“>”,我想在字符之间插入一个空格

在这种情况下,您需要向前看,如下所示:

import re

mystring = "John likes to eat Taco>Bell because it is Bar>Foo healthy third> ok."

print mystring

mystring = re.sub(r">(?! )", "> ", mystring)

print mystring
基本上,只有当
后面的字符不是空格时,才会发生替换

输出:

John likes to eat Taco>Bell because it is Bar>Foo healthy third> ok.
John likes to eat Taco> Bell because it is Bar> Foo healthy third> ok.

在这种情况下,您需要向前看,如下所示:

import re

mystring = "John likes to eat Taco>Bell because it is Bar>Foo healthy third> ok."

print mystring

mystring = re.sub(r">(?! )", "> ", mystring)

print mystring
基本上,只有当
后面的字符不是空格时,才会发生替换

输出:

John likes to eat Taco>Bell because it is Bar>Foo healthy third> ok.
John likes to eat Taco> Bell because it is Bar> Foo healthy third> ok.

一个可能的非正则表达式解决方案是

>>> somestr.replace(">","> ").replace(">  ","> ")
'John likes to eat Taco> Bell because it is Bar> Foo healthy third> ok.'

一个可能的非正则表达式解决方案是

>>> somestr.replace(">","> ").replace(">  ","> ")
'John likes to eat Taco> Bell because it is Bar> Foo healthy third> ok.'

现在还不清楚你想在这里做什么。也许如果您添加更多信息,或者添加文件前后的内容。当然可以。前:约翰喜欢吃玉米卷>贝尔后:约翰喜欢吃玉米卷>贝尔是的,这就是我想要做的。如果这是一个非常基本的问题,很抱歉。看看我的回答是否足够。谢谢你的回答。如果我提前知道字符串将是什么,我知道如何进行替换,但是在一般情况下,我从输入文件中读取,但我不知道它将是什么?现在还不清楚您在这里尝试做什么。也许如果您添加更多信息,或者添加文件前后的内容。当然可以。前:约翰喜欢吃玉米卷>贝尔后:约翰喜欢吃玉米卷>贝尔是的,这就是我想要做的。如果这是一个非常基本的问题,很抱歉。看看我的回答是否足够。谢谢你的回答。如果我提前知道字符串将是什么,我知道如何进行替换,但是如果我从输入文件中读取而不知道它将是什么,那么一般情况又如何呢?