Solved

Regular Expression Find and Replace in Visual Studio 2003

Posted on 2008-06-13
4
187 Views
Last Modified: 2013-11-26
Hey Experts,

Quick and simple question.

I have multiple code files where the Finally block in each method has an object.Dispose().. like this

Finally
       x.Dispose()
       Y.Dispose()
End Try

x and y can vary in names based on what object is being disposed. I want to do a Find and Replace in the entire solution where I have to find a match for Any object.Dispose() and replace it with
If Not Object is Nothing Then
     Object.Dispose()
End If

i.e
The code will be something like

objSQL.Dispose or lobjSQL.Dispose() or objOracle.Dispose() and I have to replace them with

If not objectname Is Nothing Then
   objectname.Dispose()
End If

where objectname could be anything that I match with a single Regular expression and use that in the replace too..

Any ideas or thoughts or the expression itself is appreciated.

Thanks,
Suj
0
Comment
Question by:sujeshva
  • 2
  • 2
4 Comments
 
LVL 9

Assisted Solution

by:Rob Siklos
Rob Siklos earned 100 total points
ID: 21780284
I would use the Search/Replace features of EditPlus (www.editplus.com).  It lets you define complex regular expressions for search/replace in files.

So the regex would be something like this:

Search:    
    (objSQL | lobjSQL | objOracle)\.Dispose\(\)
Replace with:
    If not \1 Is Nothing Then
      \1.Dispose()
    End If
0
 
LVL 3

Author Comment

by:sujeshva
ID: 21780757
Thank you for the response, but the trouble with your response is that I need to have the names of the object handy, I have over 500 different variable names and it is not limited to objSQL or lobjSQL or objOracle. What I wanted was something like ([a-Z])\.Dispose\(\) being replaced with
If not \1 Is Nothing Then
\1.Dispose()
End If
0
 
LVL 9

Assisted Solution

by:Rob Siklos
Rob Siklos earned 100 total points
ID: 21780786
Ok - no problem.  Search for this instead:
([A-Za-z][A-Za-z0-9]*)\s*\.\s*Dispose\(\)

Open in new window

0
 
LVL 3

Accepted Solution

by:
sujeshva earned 0 total points
ID: 21781666
Found the answer!

Search Expression
{([a-zA-Z0-9]+)}\.Dispose\(\)

Replace Expression
If Not \1 Is Nothing Then \n \0 \n End If

Thanks,
Suj
0

Featured Post

Is Your Active Directory as Secure as You Think?

More than 75% of all records are compromised because of the loss or theft of a privileged credential. Experts have been exploring Active Directory infrastructure to identify key threats and establish best practices for keeping data safe. Attend this month’s webinar to learn more.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

For those of you who don't follow the news, or just happen to live under rocks, Microsoft Research released a beta SDK (http://www.microsoft.com/en-us/download/details.aspx?id=27876) for the Xbox 360 Kinect. If you don't know what a Kinect is (http:…
Real-time is more about the business, not the technology. In day-to-day life, to make real-time decisions like buying or investing, business needs the latest information(e.g. Gold Rate/Stock Rate). Unlike traditional days, you need not wait for a fe…
This tutorial covers a step-by-step guide to install VisualVM launcher in eclipse.
The viewer will learn how to use and create new code templates in NetBeans IDE 8.0 for Windows.

910 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

23 Experts available now in Live!

Get 1:1 Help Now