In Visual Studio 2010, how do you search for text that is not within a single line comment?

后端 未结 2 1924
忘掉有多难
忘掉有多难 2021-01-02 10:51

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 n

相关标签:
2条回答
  • 2021-01-02 11:32

    In the Visual Studio Find dialog, try using this regular expression (make sure to select Use: Regular expressions in the Find options):

    ~(//[.:b]*)<bas>
    

    This should find all occurrences of the word bas which are not preceded by //.

    Note that the Visual Studio regex syntax is a bit different than the conventional syntax. You can find the reference HERE.

    0 讨论(0)
  • 2021-01-02 11:42

    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: ^(.~(//))*bas Which 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

    0 讨论(0)
提交回复
热议问题