text processing

Marc 'BlackJack' Rintsch bj_666 at gmx.net
Thu Sep 25 13:34:12 EDT 2008


On Thu, 25 Sep 2008 15:51:28 +0100, jitenshah78 at gmail.com wrote:

> I have string like follow
> 12560/ABC,12567/BC,123,567,890/JK
> 
> I want above string to group like as follow (12560,ABC)
> (12567,BC)
> (123,567,890,JK)
> 
> i try regular expression i am able to get first two not the third one.
> can regular expression given data in different groups

Without regular expressions:

def group(string):
    result = list()
    for item in string.split(','):
        if '/' in item:
            result.extend(item.split('/'))
            yield tuple(result)
            result = list()
        else:
            result.append(item)

def main():
    string = '12560/ABC,12567/BC,123,567,890/JK'
    print list(group(string))

Ciao,
	Marc 'BlackJack' Rintsch



More information about the Python-list mailing list