text='style="color:#000000;color:#000001;stop-color:#000000;color:#000002;solid-color:#000000;color:#000003"'
echo "$text"
echo "$text" | sed ' :a; s/\([;"]\)color:[^;]\+;\?/\1/g; ta'
[guest@localhost ~]$ text='style="color:#000000;color:#000001;stop-color:#000000;color:#000002;solid-color:#000000;color:#000003"'
[guest@localhost ~]$
[guest@localhost ~]$ echo "$text"
style="color:#000000;color:#000001;stop-color:#000000;color:#000002;solid-color:#000000;color:#000003"
[guest@localhost ~]$
[guest@localhost ~]$ echo "$text" | sed ' :a; s/\([;"]\)color:[^;]\+;\?/\1/g; ta'
style="stop-color:#000000;solid-color:#000000;
[guest@localhost ~]$
[guest@localhost ~]$ text='style="color:#000000;color:#000001;stop-color:#000000;color:#000002;solid-color:#000000;color:#000003"'
[guest@localhost ~]$
[guest@localhost ~]$ echo "$text"
style="color:#000000;color:#000001;stop-color:#000000;color:#000002;solid-color:#000000;color:#000003"
[guest@localhost ~]$
[guest@localhost ~]$ echo "$text" | sed -r 's/([^-])color:#([0-9a-zA-Z]{3}|[0-9a-zA-Z]{6});?/\1/g'
style="color:#000001;stop-color:#000000;solid-color:#000000;"
[guest@localhost ~]$
text="\
abc
hello: \"\"
def
hello: \"\"
ghi
hello: \"\"
jkl
hello: \"\"
mno\
"
echo "$text"
echo "$text" | sed '
/hello: ""/ {
x
/^\.$/ {
x
s/""/"world"/
x
}
s/^/./
x
}
'
[guest@localhost sh]$ text="\
> abc
> hello: \"\"
> def
> hello: \"\"
> ghi
> hello: \"\"
> jkl
> hello: \"\"
> mno\
> "
[guest@localhost sh]$
[guest@localhost sh]$ echo "$text"
abc
hello: ""
def
hello: ""
ghi
hello: ""
jkl
hello: ""
mno
[guest@localhost sh]$
[guest@localhost sh]$ echo "$text" | sed '
> /hello: ""/ {
> x
> /^\.$/ {
> x
> s/""/"world"/
> x
> }
> s/^/./
> x
> }
> '
abc
hello: ""
def
hello: "world"
ghi
hello: ""
jkl
hello: ""
mno
[guest@localhost sh]$
func()
{
cat <<EOF
int i;
cout << "hello!" << endl;
printf("%s", "hello");
printf("%s", "world");
EOF
}
func
func | sed '/hello/ s%^%//%'
[guest@localhost sh]$ func()
> {
> cat <<EOF
> int i;
> cout << "hello!" << endl;
> printf("%s", "hello");
> printf("%s", "world");
> EOF
> }
[guest@localhost sh]$
[guest@localhost sh]$ func
int i;
cout << "hello!" << endl;
printf("%s", "hello");
printf("%s", "world");
[guest@localhost sh]$
[guest@localhost sh]$ func | sed '/hello/ s%^%//%'
int i;
// cout << "hello!" << endl;
// printf("%s", "hello");
printf("%s", "world");
[guest@localhost sh]$
[guest@localhost ~]$ echo 'abcd' | sed 's/bb*//'
acd
[guest@localhost ~]$
abcd (почему?!!)
[guest@localhost ~]$ echo 'abcd' | sed 's/b*/x/'
xabcd
[guest@localhost ~]$
[guest@localhost ~]$ echo 'abcdabcd' | sed 's/b*/x/g'
xaxcxdxaxcxdx
[guest@localhost ~]$
[guest@localhost ~]$ echo 'abcdabcd' | sed 's/bb*/x/'
axcdabcd
[guest@localhost ~]$
[guest@localhost ~]$ s='hello allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" /> hello'
[guest@localhost ~]$
[guest@localhost ~]$ src='allow="127\\\.\\d+\\\.\\d+\\\.\\d+|::1|0:0:0:0:0:0:0:1" />'
[guest@localhost ~]$ dst='allow="^.\\*$" />'
[guest@localhost ~]$
[guest@localhost ~]$ echo "$s"
hello allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" /> hello
[guest@localhost ~]$
[guest@localhost ~]$ echo "$src"
allow="127\\\.\\d+\\\.\\d+\\\.\\d+|::1|0:0:0:0:0:0:0:1" />
[guest@localhost ~]$
[guest@localhost ~]$ echo "$dst"
allow="^.\\*$" />
[guest@localhost ~]$
[guest@localhost ~]$ echo "$s" | sed "s%$src%$dst%g"
hello allow="^.\*$" /> hello
[guest@localhost ~]$
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// }'
[guest@localhost ~]$ text="\
> a
> b
> c
> x1xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx<description>
> Туалетная вода-спрей
> <br>ВОСТОЧНЫЙ ФУЖЕР
> <br>Мужчина в стиле ориентирован на успех, целеустремлен и созидателен. Мужественность, достоинство, уверенность – его главные черты, наряду с чувственностью и романтичностью. Он любит комфорт, красивые вещи, роскошную жизнь и выражает себя в классическом пок$
> <br>Ключевые слова: Уверенный, динамичный, мужественный, благородный, элегантный, статусный, успешный</description>y1yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy
> x2xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx<description>
> Туалетная вода-спрей
> <br>ВОСТОЧНЫЙ ФУЖЕР
> <br>Мужчина в стиле ориентирован на успех, целеустремлен и созидателен. Мужественность, достоинство, уверенность – его главные черты, наряду с чувственностью и романтичностью. Он любит комфорт, красивые вещи, роскошную жизнь и выражает себя в классическом пок$
> <br>Ключевые слова: Уверенный, динамичный, мужественный, благородный, элегантный, статусный, успешный</description>y2yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy
> d
> e
> f
> "
[guest@localhost ~]$
[guest@localhost ~]$ echo -n "$text"
a
b
c
x1xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx<description>
Туалетная вода-спрей
<br>ВОСТОЧНЫЙ ФУЖЕР
<br>Мужчина в стиле ориентирован на успех, целеустремлен и созидателен. Мужественность, достоинство, уверенность – его главные черты, наряду с чувственностью и романтичностью. Он любит комфорт, красивые вещи, роскошную жизнь и выражает себя в классическом пок$
<br>Ключевые слова: Уверенный, динамичный, мужественный, благородный, элегантный, статусный, успешный</description>y1yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy
x2xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx<description>
Туалетная вода-спрей
<br>ВОСТОЧНЫЙ ФУЖЕР
<br>Мужчина в стиле ориентирован на успех, целеустремлен и созидателен. Мужественность, достоинство, уверенность – его главные черты, наряду с чувственностью и романтичностью. Он любит комфорт, красивые вещи, роскошную жизнь и выражает себя в классическом пок$
<br>Ключевые слова: Уверенный, динамичный, мужественный, благородный, элегантный, статусный, успешный</description>y2yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy
d
e
f
[guest@localhost ~]$
[guest@localhost ~]$ 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
[guest@localhost ~]$
[guest@localhost ~]$ text="\
> bla bla 23.33.72 bla
> bla bla la na 45.34.33 bla en
> bla la na 45.34.33 bla urjt
> "
[guest@localhost ~]$
[guest@localhost ~]$ echo -n "$text"
bla bla 23.33.72 bla
bla bla la na 45.34.33 bla en
bla la na 45.34.33 bla urjt
[guest@localhost ~]$
[guest@localhost ~]$ echo -n "$text" | sed 's/.* \([0-9]*\.[0-9]*\.[0-9]*\) .*/\1 &/'
23.33.72 bla bla 23.33.72 bla
45.34.33 bla bla la na 45.34.33 bla en
45.34.33 bla la na 45.34.33 bla urjt
[guest@localhost ~]$