You all have been very supportive of me so far & Im thankful for it.
I need to extract data between two sets of parenthesis and also between quotes.
what I need is "27723211621B01DJ68AG" & "AVAILABLE".
So here is what I do -
The solution that Im using right now works and this has to do with eliminating all of unnecessary characters instead of extracting what I need(which definitely is not elegant at all).
But owing to my limited understand of regex, I coded this way.
However there is new change and we need to pull in even the "130" which is in the first set of quotes at the beginning and Im not sure as how to go about this.
Simply stated, here is what I have -
and I need
How do I get this.
please help,
regards,
Lee.
Moderator's Comments:
Please use [code] and [/code] tags when posting code, data or logs etc. to preserve formatting and enhance readability, thanks.
Last edited by zaxxon; 04-14-2011 at 03:12 AM..
Reason: code tags
Btw, as you took the regular exp approach, can you please explain as to what you are doing here as your explanation would certainly give me a better sense of how to approach this problem, the next time onwards.
I'm using gensub function with regexp back reference feature, This feature within gensub works something like this:
gensub(/regexp/, replacement, how [, target], where To use back reference you need to suround between parentheses "(" and ")" the regexp you want to remember and
all that is outside the back reference parentheses won't be buffered or remembered.
Explaining first part of regexp: Where, and so on.
Then the 2nd back reference matches and remembers the string after ":" and before ")" in green(ESN:27723211621B01DJ68AG))
And the 3rd back reference is to match the substring between single quotes. Here, to match literal single quotes was needed to escape it
not only with \', but with'\''. This is single
quotes ' .. 'around \'.
After follow the same process to match the following part of the complete string, to remember the stored substrings
we use \\i in the order needed. I've used 3 backreference parentheses, then I remenber 3 backreference in the order
1,2,3, but it could be 3,1,2 or 3,3,1, or 3,2,1 etc, up to your needs. In this case with a space between them
"\\1 \\2 \\3".
Hope this helps.
Regards
These 2 Users Gave Thanks to cgkmal For This Post:
Dear Help,
I have an input file which looks like -
121 300
122 345
124 567
127 234
$1 has 125 and 126 missing. How can I output those missing values?
Thanks (6 Replies)
Hi,
Can maybe some of the UNIX-guys recommend an online UNIX intermediate level documentation with examples (not too dry :-).
More the post-beginner level, for someone who has to play around with files and directories, with chmod, grep, sed, a little awk maybe...
bw,
Omar KN
(once tasted... (2 Replies)
I am trying to extract the file names alone, for example "TVLI_STATS_NRT_XLSTWS03_20120215_132629.csv", from below output
which was given by the grep.
sam:/data/log: grep "C10_Subscribe.000|subscribe|newfile|" PDEWG511_TVLI_JOB_STATS.ksh.201202*
Output:
... (6 Replies)
Hi, I am running a script which produces a number of intermediate output files for each time step. is there a way to remove these intermediate files and just retain the final output at every end of the loop, like sort of an initialization process? this the inefficient way i do it.
for i in... (3 Replies)
Suppose host B does not allow public/private key authentication - only secureID authentication. I already have a master ssh connection from host A to host B. Host A does allow public/private key authentication. Is there any way to connect from host C to host B by way of the master ssh connection... (2 Replies)
I have a file with data extracted, and need to insert a header with a constant string, say: H|PayerDataExtract
if i use sed, i have to redirect the output to a seperate file like
sed ' sed commands' ExtractDataFile.dat > ExtractDataFileWithHeader.dat
the same is true for awk
and... (10 Replies)
problem with piping one output to another.Would like to avoid the intermediate file creation.The piping does nt work on places where files have been created and goes in an endless loop.
sed -e "s/^\.\///g" $LINE1| sed -e "s/_\(\)/kkk\1/g" > $file1
tr -s '_' ' ' < $file1| \
sort -n -k... (1 Reply)
Hi,
I just stuckup in doing some regular expressions on a file.
I have data which has multiple FHS and BTS segments like:
FHS|12121|LOCAL|2323
MSH|10101|POTAMAS|2323
PID|121221|THOMAS|DAVID|23432
OBX|2342|H1211|3232
BTS|0000|MERSTO|LIABLE
FHS|12121|LOCAL|2323
MSH|10101|POTAMAS|2323... (3 Replies)
Hi,
I have a database (a simple .dat file) which has multiple records (structure datatype) in it.
I would like to know if we can use write() system call to update/modify intermediate records in this file (using C). If so, could somegive give a code snippet of the same. :-)
Thanks in advance... (2 Replies)