Answer the question
In order to leave comments, you need to log in
How to cut text between two tags in xml?
Good evening!
Guys please help. remove text between description tags:
pastebin.com/bm31r1sh
I tried it myself, but without result:
sed 's#\(<description>\).*\(</description>\)#\1'xxxxx'\2#g' test.xml > test2.xml
sed '/<description>/,/<\/description>/{//!d}' test.xml > test2.xml
Answer the question
In order to leave comments, you need to log in
First you prepare the text to make it more comfortable, then you process it. Because of this, sed is called twice.
text="\
a
b
c
x1xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx<description>
Туалетная вода-спрей
<br>ВОСТОЧНЫЙ ФУЖЕР
<br>Мужчина в стиле ориентирован на успех, целеустремлен и созидателен. Мужественность, достоинство, уверенность – его главные черты, наряду с чувственностью и романтичностью. Он любит комфорт, красивые вещи, роскошную жизнь и выражает себя в классическом пок$
<br>Ключевые слова: Уверенный, динамичный, мужественный, благородный, элегантный, статусный, успешный</description>y1yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy
x2xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx<description>
Туалетная вода-спрей
<br>ВОСТОЧНЫЙ ФУЖЕР
<br>Мужчина в стиле ориентирован на успех, целеустремлен и созидателен. Мужественность, достоинство, уверенность – его главные черты, наряду с чувственностью и романтичностью. Он любит комфорт, красивые вещи, роскошную жизнь и выражает себя в классическом пок$
<br>Ключевые слова: Уверенный, динамичный, мужественный, благородный, элегантный, статусный, успешный</description>y2yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy
d
e
f
"
echo -n "$text"
echo -n "$text" | sed 's%<description>%&x|||%g; s%</description>%|||x&%g' \
| sed '/x|||/ { :join N; /|||x/! b join ; s/x|||.*|||x// }'
[[email protected] ~]$ text="\
> a
> b
> c
> x1xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx<description>
> Туалетная вода-спрей
> <br>ВОСТОЧНЫЙ ФУЖЕР
> <br>Мужчина в стиле ориентирован на успех, целеустремлен и созидателен. Мужественность, достоинство, уверенность – его главные черты, наряду с чувственностью и романтичностью. Он любит комфорт, красивые вещи, роскошную жизнь и выражает себя в классическом пок$
> <br>Ключевые слова: Уверенный, динамичный, мужественный, благородный, элегантный, статусный, успешный</description>y1yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy
> x2xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx<description>
> Туалетная вода-спрей
> <br>ВОСТОЧНЫЙ ФУЖЕР
> <br>Мужчина в стиле ориентирован на успех, целеустремлен и созидателен. Мужественность, достоинство, уверенность – его главные черты, наряду с чувственностью и романтичностью. Он любит комфорт, красивые вещи, роскошную жизнь и выражает себя в классическом пок$
> <br>Ключевые слова: Уверенный, динамичный, мужественный, благородный, элегантный, статусный, успешный</description>y2yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy
> d
> e
> f
> "
[[email protected] ~]$
[[email protected] ~]$ echo -n "$text"
a
b
c
x1xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx<description>
Туалетная вода-спрей
<br>ВОСТОЧНЫЙ ФУЖЕР
<br>Мужчина в стиле ориентирован на успех, целеустремлен и созидателен. Мужественность, достоинство, уверенность – его главные черты, наряду с чувственностью и романтичностью. Он любит комфорт, красивые вещи, роскошную жизнь и выражает себя в классическом пок$
<br>Ключевые слова: Уверенный, динамичный, мужественный, благородный, элегантный, статусный, успешный</description>y1yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy
x2xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx<description>
Туалетная вода-спрей
<br>ВОСТОЧНЫЙ ФУЖЕР
<br>Мужчина в стиле ориентирован на успех, целеустремлен и созидателен. Мужественность, достоинство, уверенность – его главные черты, наряду с чувственностью и романтичностью. Он любит комфорт, красивые вещи, роскошную жизнь и выражает себя в классическом пок$
<br>Ключевые слова: Уверенный, динамичный, мужественный, благородный, элегантный, статусный, успешный</description>y2yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy
d
e
f
[[email protected] ~]$
[[email protected] ~]$ echo -n "$text" | sed 's%<description>%&x|||%g; s%</description>%|||x&%g' \
> | sed '/x|||/ { :join N; /|||x/! b join ; s/x|||.*|||x// }'
a
b
c
x1xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx<description></description>y1yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy
x2xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx<description></description>y2yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy
d
e
f
[[email protected] ~]$
If I understand the question correctly, then in perl you can do this:
use strict;
use warnings;
use utf8;
my $text = <<'EOF';
<description>
Туалетная вода-спрей
<br>ВОСТОЧНЫЙ ФУЖЕР
<br>Мужчина в стиле ориентирован на успех, целеустремлен и созидателен. Мужественность, достоинство, уверенность – его главные черты, наряду с чувственностью и романтичностью. Он
любит комфорт, красивые вещи, роскошную жизнь и выражает себя в классическом пок$
<br>Ключевые слова: Уверенный, динамичный, мужественный, благородный, элегантный, статусный, успешный</description>
EOF
$text =~ s{<description>.*?</description>}{<description></description>}gsi;
print $text;
<description></description>
Didn't find what you were looking for?
Ask your questionAsk a Question
731 491 924 answers to any question