Solved

More help with RegEx on DNS files

Posted on 2006-11-28
8
292 Views
Last Modified: 2010-04-16
Further to: http://www.experts-exchange.com/Programming/Q_22074200.html

Sample:

152.146.76.xx          A      127.0.0.1
                        TXT     ("B&P")
                        TXT     ("B&P")
                        TXT     ("B&P")
173.146.76.xx          A      127.0.0.1
                        TXT      ( "bud ziegelbauer 1/20/2005 7:12:23 PM" )
195.146.76.xx         A      127.0.0.1
                        TXT      ( "clifton gayle 8/21/2004 6:25:45 AM" )
221.146.76.xx          A      127.0.0.1
                        TXT      ( "winston redell 6/24/2005 11:42:28 AM" )
                        TXT      ( "lemuel omdahl 6/24/2005 11:42:28 AM" )
239.146.76.xx          A      127.0.0.1
                        TXT     ("B&P")
4.146.76.xx            A      127.0.0.1
                        TXT      ( "bradley redmon 9/7/2004 4:54:06 AM" )
99.146.76.xx           A      127.0.0.1
                        TXT      ( "erin ficks 8/22/2004 11:34:31 PM" )
130.147.76.xx         A      127.0.0.1
                        TXT      ( "blaine thrune 6/21/2005 10:00:36 AM" )
                        TXT      ( "jimmie kennard 6/21/2005 10:00:18 AM" )
                        TXT      ( "german hurd 6/21/2005 10:00:11 AM" )
                        TXT      ( "jc seymore 6/21/2005 10:00:10 AM" )
                        TXT      ( "gerardo cheely 6/21/2005 10:00:09 AM" )
                        TXT      ( "tommie bia 6/21/2005 9:59:58 AM" )

---
I want to remove all of the extra TXT lines, leaving only one (doesn't really matter which one).


0
Comment
Question by:nummagumma2
8 Comments
 
LVL 4

Expert Comment

by:chhokra_expert
ID: 18031354
how about you simplify the problem a little bit...
1. modify the TXT line that you want to keep by manually changing TXT to something else, say TXT_
2. run a global search and replace to delete all other TXT lines
3. replace TXT_ with TXT for the one line that you changed.

(i'm not completely sure of the syntax, but the idea to select only lines with "TXT followed by any number of blanks, followed by a "(" and chars to the end of the line
search for: TXT[ ]+\(.+
replace with: "" (nothing)

0
 
LVL 1

Author Comment

by:nummagumma2
ID: 18032987
It's a good idea in concept, however this is a 200,000+ line file so that would be a lot of work to manually change the TXT value of those lines.
0
 
LVL 41

Expert Comment

by:HonorGod
ID: 18033308
grep -v "^  *TXT" filename
0
3 Use Cases for Connected Systems

Our Dev teams are like yours. They’re continually cranking out code for new features/bugs fixes, testing, deploying, testing some more, responding to production monitoring events and more. It’s complex. So, we thought you’d like to see what’s working for us.

 
LVL 41

Expert Comment

by:HonorGod
ID: 18033312
maybe this would be better (handles tab chars as well)

grep -v "^\s*TXT" filename
0
 
LVL 1

Author Comment

by:nummagumma2
ID: 18050588
Honor - thanks too...  This isn't a situation where I can use grep, since I'm using a specific text editor.

I ended up using

Search:

0.1\n^.+0.1\n

replace
0.1\n                        TXT      ( "Multiple" )

which takes

130.147.76.xx         A     127.0.0.1
                        TXT     ( "blaine thrune 6/21/2005 10:00:36 AM" )
                        TXT     ( "jimmie kennard 6/21/2005 10:00:18 AM" )
                        TXT     ( "german hurd 6/21/2005 10:00:11 AM" )
                        TXT     ( "jc seymore 6/21/2005 10:00:10 AM" )
                        TXT     ( "gerardo cheely 6/21/2005 10:00:09 AM" )
                        TXT     ( "tommie bia 6/21/2005 9:59:58 AM" )

and converts it to


130.147.76.xx         A     127.0.0.1
                        TXT     ( "multiple" )
0
 
LVL 41

Expert Comment

by:HonorGod
ID: 18050905
ah, sed...
0
 
LVL 1

Accepted Solution

by:
Computer101 earned 0 total points
ID: 18320647
PAQed with points refunded (250)

Computer101
EE Admin
0

Featured Post

DevOps Toolchain Recommendations

Read this Gartner Research Note and discover how your IT organization can automate and optimize DevOps processes using a toolchain architecture.

Question has a verified solution.

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

A short article about a problem I had getting the GPS LocationListener working.
This article will inform Clients about common and important expectations from the freelancers (Experts) who are looking at your Gig.
An introduction to basic programming syntax in Java by creating a simple program. Viewers can follow the tutorial as they create their first class in Java. Definitions and explanations about each element are given to help prepare viewers for future …
With the power of JIRA, there's an unlimited number of ways you can customize it, use it and benefit from it. With that in mind, there's bound to be things that I wasn't able to cover in this course. With this summary we'll look at some places to go…

770 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