Samuel Sieb, Wed, 4 May 2016 10:42:20 -0700: > On 05/04/2016 10:09 AM, Jon LaBadie wrote: >> 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). >> > However, usually regexps are greedy so they match as much as possible, > not the minimum. And that's what it does. It matches the empty string at the beginning of the line - and it would also (greedily) match digits at the beginning of the line, but there are none. Try echo '123This is a test 12335 and 669384 535xy4' | sed 's/[0-9]*//' > And somehow it does work when you use /g so it is > matching more. No, it's not matching *more*, it's matching *again* (that's exactly what the g flag tells it to). -- Regards mks -- 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