This one intrigued me because I'm more of an awk person than a perl person...
I wasn't familiar with RS, FS and ORS as built in variables and now realize that's some very powerful stuff there. (by the way, I don't know how I made it so many years never knowing about FNR... argh!!).
To explain your example, RS is the record separator, which is how a line is defined. Normally I think the default RS is "\n" i.e. the newline. FS is the field separator and normally that's whitespace. ORS is output record separator.
In other words, define a new line by finding {. Break the "line" into two fields separated by "} " (note space after brackets... So "my big}date yesterday" is not a match). The first field is what's inside the {}, the second is what comes after. Print the second field (printing the first field would only show what was inside the brackets). Make the output record separator nothing (otherwise it would insert line breaks any time there's a {}. One downside of this though is that if the line break is within the {}, that break disappears. So
Yesterday we ate {some
giant} cake and
drank tea
becomes
Yesterday we ate cake and
drank tea
which is not the end of the world I suppose.
Great answer, Scrutinizer!
Last edited by Franklin52; 12-12-2013 at 03:39 AM..
Reason: Please use code tags
And just to be a completist on this issue, building on scrutinizer's suggestion, here's the code that would do everything I asked for in the original message
Hello experts,
I have a text file with lot of curly brackets (both opening { & closing } ). I need to delete them alongwith the text between opening & closing brackets' pair.
For ex: Input:-
59. Rh1 Qe4 {(Qf5-e4 Qd8-g8+ Kg6-f5
Qg8-h7+ Kf5-e5 Qh7-e7+ Ke5-f5 Qe7-d7+ Qe4-e6 Qd7-h7+ Qe6-g6... (6 Replies)
Hi ,
When extracting the data from API end point ,its giving multi line json .I want to remove certain lines with
group": "tag" or tget and respect "item" values
python test.py /data{" Id":" 7554317""group":"get", "item":"xx5e1"],"fields":}
{
"time": 1520460953,
"... (4 Replies)
I am trying to remove a multiline HTML tag and its contents from a few HTML files following the same basic pattern. So far using regex and sed have been unsuccessful. The HTML has a basic structure like this (with the normal HTML stuff around it):
<div id="div1">
<div class="div2">
<other... (4 Replies)
I need to use something bash related to remove everything inside of brackets.
For example. In the following:
abc<def>ghi<jkl>mno
the result should be:
abcghimno (4 Replies)
Hi all
My previous question was complicated let me simplify it
I have to just remove whatever is present in bracket () along with brackets
ERCC1 (PA155) Platinum compounds (PA164713176) Allele A is not associated with response to Platinum compounds in women with Ovarian Neoplasms as... (2 Replies)
Hi all,
I want to remove the remove bracket sign ( ) and put in the separate column I also want to remove the repeated entry like in first row in below input (PA156) is repeated
ESR1 (PA156) leflunomide (PA450192) (PA156) leflunomide (PA450192)
CHST3 (PA26503) docetaxel... (4 Replies)
Hi all,
I want to remove the remove bracket sign ( ) and put in the separate column I also want to remove the repeated entry like in first row in below input (PA156) is repeated
ESR1 (PA156) leflunomide (PA450192) (PA156) leflunomide (PA450192)
CHST3 (PA26503) docetaxel... (2 Replies)
Hello folks,
I have a data file in which each line has 54 numbers, and every 3 numbers are bracketed. So totally 18 pairs of brackets in each line.
A typical line is like:
{29.187000274658203 -16.148000717163086 -0.9380000233650208} {30.63800048828125 -15.977999687194824... (5 Replies)
Hi All,
I have a text file which looks like this:
computer programming
systems engineering
I want to get rid of these square brackets and also the text that is inside these brackets. So that my final text file looks like this:
computer programming
systems engineering
I am using... (3 Replies)