On 05/04/2016 03:29 PM, Markus Schönhaber wrote:
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]*//'
Oh, right. I never use a regexp that can match nothing, so I missed
that. :-)
--
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