假设我在以下形式的 ASCII 文件中有一行:
{text1} {stringA} {text2} {stringB} {text3}
where{stringA}
和{stringB}
是感兴趣的子串。我们分别称它们为“A”和“B”。字符串{text1}
、{text2}
和{text3}
是不包含 A 或 B 的任意长度(可能为空)的字符串。
我想在 Python 中做的只是交换 A 和 B 使得该行从
{text1} {stringA} {text2} {stringB} {text3}
到
{text1} {stringB} {text2} {stringA} {text3}
我很感激这里的任何帮助。我认为通过在这个问题上获得帮助,它将帮助我学习更好地使用 Python 中的正则表达式。
请注意{text1}
,{text2}
, 和{text3}
是未知字符串。
我们确切地知道子串 A 和 B。我们知道 A 在该行中位于 B 之前。但是,我们不知道它们之前/之间/之后是什么(如果有的话)。
示例(A=约翰,B=蒂姆):
(1) 这个:
“我告诉约翰把袋子给蒂姆。”
改成这样:
“我告诉蒂姆把袋子给约翰。”
(2) 这:
“约翰向蒂姆问好。”
改成这样:
“蒂姆向约翰问好。”
(3) 这个:
“约翰!h9aghagTim”
改成这样:
“蒂姆!h9aghagJohn”