【问题标题】:Python, detect a character with on quote inside a string between double quotes [closed]Python,在双引号之间的字符串中检测带有引号的字符[关闭]
【发布时间】:2020-12-16 20:03:36
【问题描述】:

我有一个元组的示例如下:

('XXXX','XXXX',"XXXX's Something",'XXXX')

我想把它变成:

('XXXX','XXXX','XXXX''s Something','XXXX')

我尝试这样做的原因是,此输入将被摄取到 Azure SQL 数据库 中,该数据库使用另一个单引号跳过该引号(如上所示)。

如何仅检测双引号之间字符内的单引号?

最好的问候,

【问题讨论】:

  • 将其转换为字符串并使用.replace("\"", "'") 这样简单的工作吗?
  • 如果您在execute 函数中输入带有parameters 的值,则单引号应该没有问题。您似乎尝试手动构建 SQL 字符串。
  • 最外面的引号不是值的一部分。 'XXX' 和 "XXX" 是同一个字符串。您应该能够使用if "'" in item: 来检测字符串是否包含单引号。

标签: python python-3.x tuples character single-quotes


【解决方案1】:

您可以使用 tuple() 和生成器表达式进行元组推导。

>>> t = ('XXXX','XXXX',"XXXX's Something",'XXXX')
>>> tuple(s.replace("'", "''") for s in t)
('XXXX', 'XXXX', "XXXX''s Something", 'XXXX')

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-09-27
    • 1970-01-01
    • 2017-08-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多