Python 特殊字符到字符串

Python 特殊字符到字符串,python,string,Python,String,正则表达式对我来说是新的。是否可以在字符串中的单词的前面和结尾加上' 我有多个字符串(例如:str1=“abc+xyz”)。对于这一点,我想在字符串中存在的一个单词中添加一个“,”(对于上面的示例:str1=“abc+xyz”必须转换为str1=“'abc'+'xyz'”) 预期产出: str1 = "('abc' +'xyz')" str2 = "'rc'+'op'" str3 = "('er'+'ut')*'yu'" 这是你想要的

正则表达式对我来说是新的。是否可以在字符串中的单词的前面和结尾加上'

我有多个字符串
(例如:str1=“abc+xyz”)
。对于这一点,我想在字符串中存在的一个单词中添加一个“,”(对于上面的示例:
str1=“abc+xyz”
必须转换为
str1=“'abc'+'xyz'”

预期产出:

str1 = "('abc' +'xyz')"
str2 = "'rc'+'op'"
str3 = "('er'+'ut')*'yu'"
这是你想要的吗

strings = ["df[abc] +df[xyz]", "(df[rc]+df[op]", "(df[er]+df[ut])*df[yu]"]
print("\n".join(s.replace("[", "['").replace("]", "']") for s in strings))
输出:

df['abc'] +df['xyz']
(df['rc']+df['op']
(df['er']+df['ut'])*df['yu']
如果你想用正则表达式实现这一点,这里有一种方法:

import re

strings = ["df[abc] +df[xyz]", "(df[rc]+df[op]", "(df[er]+df[ut])*df[yu]"]

pattern = re.compile(r"\[(.*?)\]")
print("\n".join(pattern.sub(r"['\1']", s) for s in strings))
重新导入

regex=r“(?如果字符串像这样”(er+ut)*yu)(转换后)('er'+'ut'*'yu')@CharanNair它只对
[
]
中包含的变量有效。在你的帖子中,你只包含了使用
[
]
的示例。哦!明白了,是的,但想检查它是否也有效”('er'+'ut'))*“yu”,“呃”+“ut”有没有这样的模式?可能是的。用适当的细节更新你的帖子,以获得适当的答案。
import re

strings = ["df[abc] +df[xyz]", "(df[rc]+df[op]", "(df[er]+df[ut])*df[yu]"]

pattern = re.compile(r"\[(.*?)\]")
print("\n".join(pattern.sub(r"['\1']", s) for s in strings))
import re

regex = r"(?<=\[)[^]]+(?=\])"
print(re.sub(regex, '"\g<0>"', "(df[er]+df[ut])*df[yu]"))