2015-07-13 82 views
0

我需要使用(最好是SQL)字符串函数(即CHARINDEX,LEFT,TRIM等)或Python来实现以下任务。SQL/Python - 带逗号的字符串替换模式

这里的问题:

Example string: BOB 3A, ALICE 6M 

Required output: 3aB, 6mA 

正如你看到的,我需要得到的最后两个字符每个字一个逗号前,然后每个项目的第一个字符追加到尾部。最好这应该适用于任意数量的用逗号分隔它们的项目,但可能的情况是两个。

任何提示/方向将是伟大的。谢谢。

回答

0

下面是一个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')

0

Yoyu可以试试这个,

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

或'','.join(i [-2] + i [-1] .lower()+ i [0]为我在s.split(','))' –

0

试试这个:

str = 'BOB 3A, ALICE 6M' 

print ', '.join(map(lambda x: x[-2:].lower()+x[0], str.split(", ") ) ) 
相关问题