Over a million developers have joined DZone.
{{announcement.body}}
{{announcement.title}}

Efficient Search And Replace in Eclipse With Regular Expressions

DZone's Guide to

Efficient Search And Replace in Eclipse With Regular Expressions

· Java Zone
Free Resource

Build vs Buy a Data Quality Solution: Which is Best for You? Gain insights on a hybrid approach. Download white paper now!

Using regular expressions in eclipse to search and replace text in a file, is straight forward and very handy!
All you need to know is that the matched text is going to be available in the replace textbox using the '$' dollar sign.
So to access the first matched element use $1, for the second $2 and so on.

I had an old method with hundreds of lines doing calling a getAttribute("X") and casting the result to a string.
(String)object1.getAttribute("X")
(String)object2.getAttribute("Y")
(String)objectN.getAttribute("Z")

 

I had to change them all to use a new method that checks if the attribute is null. So the new line would be

getSafeStringAttribute(object1,"X")
getSafeStringAttribute(object2,"Y")
getSafeStringAttribute(objectN,"Z")

With this simple regEx you can do a replace all!

find : \(String\)(.+)\.getAttribute\("(.+)"\)
replace: getSafeStringAttribute($1,"$2")

The first (.+) will match the objectX part while the second will match the attribute name.

The best thing is that when you select some text and type CTRL + F (if the Regular Expressions checkbox is ticked) you string in the find will be already escaped from characters like '(', ')' etc!

 

From http://www.devinprogress.info/2012/02/eclipse-regular-expressions-find.html

Build vs Buy a Data Quality Solution: Which is Best for You? Maintaining high quality data is essential for operational efficiency, meaningful analytics and good long-term customer relationships. But, when dealing with multiple sources of data, data quality becomes complex, so you need to know when you should build a custom data quality tools effort over canned solutions. Download our whitepaper for more insights into a hybrid approach.

Topics:

Opinions expressed by DZone contributors are their own.

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}