Hi, for rm1 I think something like this could work: def rm1(prefix,txt): regular_expresion = re.compile(r''+prefix+'(.*)') return re.match(regular_expresion,txt).group(1)
On Tue, Jul 13, 2010 at 8:49 PM, News123 <news1...@free.fr> wrote: > I wondered about a potentially nicer way of removing a prefix of a > string if it exists. > > > Here what I tried so far: > > > def rm1(prefix,txt): > if txt.startswith(prefix): > return txt[len(prefix):] > return txt > > > for f in [ 'file:///home/me/data.txt' , '/home/me/data.txt' ]: > # method 1 inline > prefix = "file://" > if f.startswith(prefix): > rslt = f[len(prefix):] > else > rsl = f > # method 2 as function > rslt = rm1('file://',f) > > > Is there any nicer function than above rm1()? > Is there any nicer inline statement rhan my method 1' ? > > -- > http://mail.python.org/mailman/listinfo/python-list > -- Juan Andres Knebel
-- http://mail.python.org/mailman/listinfo/python-list