String splitting question

Fred Gansevles gansevle at ewi.utwente.nl
Wed Apr 9 08:56:39 CEST 2003


Jim Shady wrote:

> Hello,
> 
> I am a beginner at Python and I just joined this group.
> 
> I have a string:
> 
> abcd/df/a/iiwk/abcdefghijkl/b/c
> 
> I need to get the longest string between the /s of the string. For
> example, longest_str() for the above line should return
> 'abcdefghijkl'. How do I go about doing this?
> 
> Thanks in advance.
> 
> Regards,
> Jim

try this one:

        def ls(s, c='/'):
            parts = s.split(c)
            d = {}
            for p in parts:
                if not d.has_key(len(p)):
                    d[len(p)] = []
                d[len(p)].append(p)
            k = d.keys()
            k.sort()
            return d[k[-1]]

        print ls('abcd/df/a/iiwk/abcdefghijkl/b/c')

it returns a list with the longest strings




        




More information about the Python-list mailing list