On Wed, May 04, 2016 at 03:44:26PM +1000, Philip Rhoades wrote: > People, > > This behaves as expected: > > echo 'This is a test 12335 and 669384 535xy4' | sed 's/[0-9]*//g' > > but I would expect this: > > echo 'This is a test 12335 and 669384 535xy4' | sed 's/[0-9]*//' > > to delete the first string of digits but it doesn't do anything . . > clarification from a sed guru? > The '*' means "zero or more digits". Don't forget that zero. The first match is where there are zero digits, i.e. at the beginning of the line. So sed replaces it with "//" (nothing). Try sed 's/[0-9]*/X/' to confirm. You really want sed 's/[0-9][0-9]*//' which reads a digit followed by zero or more additional digits. jl -- Jon H. LaBadie jonfu@xxxxxxxxxx -- users mailing list users@xxxxxxxxxxxxxxxxxxxxxxx To unsubscribe or change subscription options: http://lists.fedoraproject.org/admin/lists/users@xxxxxxxxxxxxxxxxxxxxxxx Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct Guidelines: http://fedoraproject.org/wiki/Mailing_list_guidelines Have a question? Ask away: http://ask.fedoraproject.org