sed with several lines, how?

Mark mhullrich at gmail.com
Sat Nov 27 17:58:11 UTC 2010


On Sat, Nov 27, 2010 at 5:27 AM, Christopher Chan
<christopher.chan at bradbury.edu.hk> wrote:
> awk 'BEGIN {sawpattern=0} "^[[:alpha:]], ^[[:alpha:]]" {if (($0
>  ~/<br><font size=3>[[:alpha:]]/ )&&  (sawpattern == 0)) {sawpattern=1}
> else {sawpattern=0;print $0}}' testfile.txt
>
> I don't know how your files are exactly formatted. Please look up the
> documentation if you need to further finetune.
>
> man awk
> man 7 regex
>
> On Saturday, November 27, 2010 09:03 PM, Arthur Bela wrote:
>> thank you, and sorry, if i had formulated wrong, but the "SOMETEXT#X"
>> is a random STRING, like:
>>
>> $ cat testfile.txt
>> alsjflsajfkljasdf
>> <br><font size=3>asfklasjlkyxcvo</font><br>
>> <br><font size=3>kldfjlkasjdfasdf</font><br>
>> kasfjxcvklajdflas
>>
>> yxcvkjasafjads
>> <br><font size=3>asdfjkldjlasj</font><br>
>> </font></div></body></html>
>> uiyxzckjhasfsd
>> $
>>
>>
>>
>> $ awk 'BEGIN {sawpattern=0} "^SOMETEXT, ^SOMETEXT" {if (($0
>> ~/<br><font size=3>SOMETEXT/ )&&  (sawpattern == 0)) {sawpattern=1}
>> else {sawpattern=0;print $0}}' testfile.txt
>> alsjflsajfkljasdf
>> <br><font size=3>asfklasjlkyxcvo</font><br>
>> <br><font size=3>kldfjlkasjdfasdf</font><br>
>> kasfjxcvklajdflas
>>
>> yxcvkjasafjads
>> <br><font size=3>asdfjkldjlasj</font><br>
>> </font></div></body></html>
>> uiyxzckjhasfsd
>> $
>>
>>
>>
>> On 27 November 2010 13:36, Christopher Chan
>> <christopher.chan at bradbury.edu.hk>  wrote:
>>> On Saturday, November 27, 2010 07:39 PM, Arthur Bela wrote:
>>>> hyphen's [ - ] are just for marking the start/end of a pattern, but
>>>> there are _not in_ the pattern!
>>>> "OUTPUT" is what i want after "seding" the PATTERN#X's
>>>>
>>>>
>>>> so i for e.g.: need the first, and second "magic"
>>>> sed "FIRSTMAGIC" PATTERN#1
>>>> sed "SECONDMAGIC" PATTERN#2
>>>>
>>>>
>>>>
>>>>
>>>> PATTERN#1:
>>>>
>>>> -----------------------------------
>>>> SOMETEXT#1
>>>> <br><font size=3>SOMETEXT#2</font><br>
>>>> <br><font size=3>SOMETEXT#3</font><br>
>>>> SOMETEXT#4
>>>> -----------------------------------
>>>>
>>>> "exact pattern", what is unique from the pattern:
>>>> -----------------------------------
>>>> </font><br>\n<br><font size=3>
>>>> -----------------------------------
>>>>
>>>> OUTPUT:
>>>> -----------------------------------
>>>> SOMETEXT#1
>>>> <br><font size=3>SOMETEXT#3</font><br>
>>>> SOMETEXT#4
>>>> -----------------------------------
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> and:
>>>>
>>>> PATTERN#2:
>>>>
>>>> -----------------------------------
>>>> SOMETEXT#1
>>>> <br><font size=3>SOMETEXT#2</font><br>
>>>> </font></div></body></html>
>>>> SOMETEXT#3
>>>> -----------------------------------
>>>>
>>>> "exact pattern", what is unique from the pattern:
>>>> -----------------------------------
>>>> </font><br>\n</font></div></body></html>
>>>> -----------------------------------
>>>>
>>>> OUTPUT:
>>>> -----------------------------------
>>>> SOMETEXT#1
>>>> </font></div></body></html>
>>>> SOMETEXT#3
>>>> -----------------------------------
>>>>
>>>>
>>>> i just can't figure it out, how to "sed" when having several lines
>>>> [nor in awk, perl..]
>>>>
>>>
>>> Impossible with sed. You can use awk.
>>>
>>> Output of: 'cat testpart'
>>>
>>> SOMETEXT#1
>>> <br><font size=3>SOMETEXT#2</font><br>
>>> <br><font size=3>SOMETEXT#3</font><br>
>>> SOMETEXT#4
>>>
>>> SOMETEXT#1
>>> <br><font size=3>SOMETEXT#2</font><br>
>>> </font></div></body></html>
>>> SOMETEXT#3
>>>
>>> Output of: awk 'BEGIN {sawpattern=0} "^SOMETEXT, ^SOMETEXT" {if (($0 ~
>>> /<br><font size=3>SOMETEXT/ )&&  (sawpattern == 0)) {sawpattern=1} else
>>> {sawpattern=0;print $0}}' testpart
>>>
>>> SOMETEXT#1
>>> <br><font size=3>SOMETEXT#3</font><br>
>>> SOMETEXT#4
>>>
>>> SOMETEXT#1
>>> </font></div></body></html>
>>> SOMETEXT#3
>>>
>>> That seems to be what you are looking for.
>>>
>>> --
>>> ubuntu-users mailing list
>>> ubuntu-users at lists.ubuntu.com
>>> Modify settings or unsubscribe at: https://lists.ubuntu.com/mailman/listinfo/ubuntu-users
>>>
>>
>
>
> --
> ubuntu-users mailing list
> ubuntu-users at lists.ubuntu.com
> Modify settings or unsubscribe at: https://lists.ubuntu.com/mailman/listinfo/ubuntu-users
>

Could you both please stop top-posting?




More information about the ubuntu-users mailing list