Horacius ReX a écrit : > Hi, > > I have to read some data from a file, and on each block it always > appears the followng string; xyz.vs.1-81_1 . It appears a lot of time > with different numbers like; > > xyz.vs.1-81_1 > xyz.vs.1-1234_1 > xyz.vs.1-56431_1 > > and so on > > My problem is that I need to extract from this string the number. For > instance in xyz.vs.1-81_1 I have to extract the number 81, and in > xyz.vs.1-1234_1 I need to get the number 1234. > > What is the easiest way of doing this ?
Not necessarily the "easiest", but: >>> data = ['xyz.vs.1-81_1', 'xyz.vs.1-1234_1', 'xyz.vs.1-56431_1'] >>> for d in data: ... print d, ":", d.split('.')[2].split('-')[1].split('_')[0] ... xyz.vs.1-81_1 : 81 xyz.vs.1-1234_1 : 1234 xyz.vs.1-56431_1 : 56431 -- http://mail.python.org/mailman/listinfo/python-list