LiJiefei / codesearch

Automatically exported from code.google.com/p/codesearch
BSD 3-Clause "New" or "Revised" License
0 stars 0 forks source link

Support grep's "-w" flag [PATCH] #13

Open GoogleCodeExporter opened 9 years ago

GoogleCodeExporter commented 9 years ago
It's nice to be able to search for 'whole words', which is to say making sure 
the pattern has a word boundary at the beginning and end.

Having to type '\bpattern\b' is annoying, and grep/ack already have a -w flag 
which does this for you.
Since we already have -i which adjusts the pattern, I think adding another one 
isn't to terrible.

I've attached a patch that does this.

Original issue reported on code.google.com by dgryski on 17 Feb 2012 at 1:13

Attachments:

GoogleCodeExporter commented 9 years ago
Blindly adding \b to the start and end of the pattern fails for cases where the 
pattern _already_ starts or ends on a word-boundary.

I've updated the patch with a better fix.  I've copied the implementation of 
regex.isWordByte() because we need to know what regex thinks is a word 
boundary.  An alternate fix would be to export this function directly from the 
package.

Original comment by dgryski on 23 Feb 2012 at 9:10

Attachments:

GoogleCodeExporter commented 9 years ago
This patch only works for trivial cases, and making it work in the full case is 
Hard(er).

Full discussion on the patch set:

https://codereview.appspot.com/6162045/

I'm leaving this open for now, because it's still a nice feature.

Original comment by dgryski on 6 Jun 2012 at 8:10