Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 28 Aug 2008 15:04:22 -0400
From:      An <anmichel@gmail.com>
To:        "Joseph Olatt" <joji@eskimo.com>, freebsd-questions@freebsd.org
Subject:   Re: sed html tags
Message-ID:  <db2611860808281204ve41eb7dj3ec3d2c6b516dea2@mail.gmail.com>
In-Reply-To: <20080828094956.A1175@eskimo.com>
References:  <41baaeae-0c1d-4a73-9540-8049b837261c@l64g2000hse.googlegroups.com> <48B356BE.3080501@datapipe.com> <db2611860808252119g25adf379wf7b5825bbd4cd694@mail.gmail.com> <48B39A4E.1@gmail.com> <db2611860808260434l2a3fe744y5e94c46d581bc25a@mail.gmail.com> <20080828094956.A1175@eskimo.com>

next in thread | previous in thread | raw e-mail | index | archive | help
yes, it does work perfectly with the example I gave... the actual file
is some like

... <span xxxx> 111 <span www> 1111no </span> </span> 2222 <span yyy>
3333 </span>  5555 <span yyy> 6666 </span> ...


your command only returns ]# sed 's/\(<span
.*>.*<\/span>\)\(.*\)\(<span .*>.*<\/span>\)/\2/' file

 5555


I wish to rip all <span xxx> .* </span> and obtain

... 2222 <span yyy> 3333 </span> 5555 <span yyy> 6666 </span>...


i think sed should be able to do it, but the operator [ ^ (  ) ]* is
not behaving as i think it would... perl does it alright, though : s

thanks,

siran



On Thu, Aug 28, 2008 at 12:49 PM, Joseph Olatt <joji@eskimo.com> wrote:
> <snip>
>
>> > >>> Hi, I have the string
>> > >>>
>> > >>> <span xxxx> 111 </span> 2222 <span yyyy> 3333 </span>
>> > >>>
>> > >>> And i wish to use sed to strip *only* the "<span xxxx>" tag and its
>> > >>> contents... is this possible ? I'm trying this expression, but it
>> > >>> doesn't work...
>> > >>>
>> > >>> sed 's/<span xxxx[^\(</span>\)]+<\/span>//g' file
>> > >>>
>> > >>> is there anything like it ?
>> > >>>
>> > >>> I would like to obtain
>> > >>>
>> > >>> 2222
>> > >>>
>> > >>>
>> > >>>
>> > >>> I hope someone can help,
>> > >>>
>> > >>> thank you,
>> > >>>
>> > >>> siran
>
> If you haven't yet solved the above problem, give the following a try:
>
> sed 's/\(<span .*>.*<\/span>\)\(.*\)\(<span .*>.*<\/span>\)/\2/'
>
>
> regards,
> joseph
>
> <snip>
>



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?db2611860808281204ve41eb7dj3ec3d2c6b516dea2>