【问题标题】:SQL / Python - String replacement pattern with commasSQL / Python - 带逗号的字符串替换模式
【发布时间】:2017-01-18 05:03:19
【问题描述】:

我需要使用 最好是 SQL 字符串函数(即 CHARINDEX、LEFT、TRIM 等)或 Python 来完成以下任务。

问题来了:

Example string: BOB 3A, ALICE 6M

Required output: 3aB, 6mA

如您所见,我需要获取逗号前每个单词的最后两个字符,然后将每个项目的第一个字符附加到末尾。最好这应该适用于用逗号分隔的任意数量的项目,但可能的情况是两个。

任何提示/方向都会很棒。谢谢。

【问题讨论】:

    标签: python sql regex string


    【解决方案1】:

    这是一个 Python 解决方案:

    def thesplit(s):
        result = []
    
        for each in s.split(', '):
            name, chars = each.split(' ')
            result.append(chars.lower() + name[0])
    
        return ', '.join(result)
    

    你可以这样使用它:thesplit('BOB 3A, ALICE 6M')

    【讨论】:

      【解决方案2】:

      悠悠可以试试这个,

      >>> s = "number: 123456789"
      >>> ', '.join([i[-2]+i[-1].lower()+i[0] for i in s.split(', ')])
      '3aB, 6mA'
      

      【讨论】:

      • ', '.join(i[-2]+i[-1].lower()+i[0] for i in s.split(', '))
      【解决方案3】:

      试试这个:

      str = 'BOB 3A, ALICE 6M'
      
      print ', '.join( map( lambda x: x[-2:].lower()+x[0], str.split(", ")  )   )
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-11-28
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多