In Visual Studio 2010, how do you search for text that is not within a single line comment? E. G. how to find “bas” in:
foo bar bas
but not in
foo bar // bas
Note that it should find the line:
foo / bar / bas
(edit) And it should not find the line:
foo // bar bas
Okay, so I asked this question just so I could refer back to my own answer.
Visual Studio doesn’t seem to have the typical look-ahead, look-behind constructs. It does have a similar zero-width negative assertion. The syntax is ~(x) which means the pattern does not match x at this point in the pattern. Using this construct, I came up with this:
^(.~(//))*basWhich works really well, but won’t exclude a line where // are the first two characters on the line. A version to fix that is:^~(//)(.~(//))*bas