如何在python中将直引号转换为大括号?

问题描述 投票:-1回答:2

我必须将所有的直接引号替换为大括号(“”)。

我使用s.replace将所有的直引号替换为卷曲的引号,但是,它们都在相同的方向上。我不知道在一个单词前如何使一个单引号引起来,而在一个单词的末尾却引起反引号。

例如:'" "o" "i" "'必须转换为'“ “o” “i” ”'

python python-3.x double-quotes converters
2个回答
0
投票

您可以尝试此操作(text是您的字符串):

for i in range(text.count('"')/2+1) :
    text = text.replace( '"', 'open-quote', 1)
    text = text.replace( '"', 'close-quote', 1)

它们都将被替换。

[open-quoteclose-quote用于易于阅读,请替换为所需的实际引号字符。


0
投票

您可以使用re来查找一对引号并将其替换。

>>> s = "\" \"o\" \"i\" \""
>>> s
" "o" "i" "
>>> re.sub(r'(\")(.?)(\")', '“\g<2>”', s)
“ ”o“ ”i“ ”
© www.soinside.com 2019 - 2024. All rights reserved.