On Thu, Jul 14, 2016 at 04:02:02PM +1000, c...@zip.com.au wrote:
> On 13Jul2016 22:03, Mike Wright <nob...@nospam.hostisimo.com> wrote:
> > OK, thanks everybody.
> > 
> > Had to use egrep. This works:
> > 
> > PATTERN='https?://[^/]*\.in(/.*)*'
> > egrep $PATTERN file.of.links > links.in
> 
> You need quotes around $PATTERN when you use it, thus:
> 
>  egrep "$PATTERN" file.of.links > links.in
> 
...
> > Covers cases with https and where nothing follows the .in
> 
> Your:
> 
>  (/.*)*
> 
> is better written:
> 
>  (/.*)?
> 
I'll mention one of my pet peeves (kinda like RLS's UUOC* award).

In a simple pattern matching grep RE, a repetition operator, '*'
(and in egrep '?'), is useless at the start or end of the pattern
and may reduce grep's efficiency.

  grep .*abc
  grep   abc.*
  grep .*abc.*
  grep   abc

Will all match the same set of lines.

Note, I'm not referring to some situations where anchors are used
(ex. 'abc[0-9]*$'), or sed substitutions, or even grep with the
'-o' option to output the matched portion.

Jon

 * Randal L Schwarz' Useless Use Of Cat
-- 
Jon H. LaBadie                  jo...@jgcomp.com
--
users mailing list
users@lists.fedoraproject.org
To unsubscribe or change subscription options:
https://lists.fedoraproject.org/admin/lists/users@lists.fedoraproject.org
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

Reply via email to