Sed subsitution dans un texte entre > et <
Pims83
Messages postés
21
Statut
Membre
-
jipicy Messages postés 41342 Statut Modérateur -
jipicy Messages postés 41342 Statut Modérateur -
Bonjour,
je cherche comme le titre in dique a faire une substituion qui mest plutot difficile
Aller des exemple et ce sera plus claire
ex transformer tatatat>toto<tatatatata en tatatat>t o t o <tatatatata
pour arriver à faire ca :
tataerq>bonjour comment ca va<tazrgthyjyjuht>bien et toi ?<tataiopkli_hjt>pas trop mal !<dhfgbrthtatatat>lol<tatatatazerdfcef>
tataerq>b o n j o u r c o m m e n t c a v a <tazrgthyjyjuht>b i e n e t t o i ? <tataiopkli_hjt>p a s t r o p m a l ! <dhfgbrthtatatat>l o l <tatatatazerdfcef>
ce dernière exemple pour dire que le motif peut ce répeter plusieur fois par ligne
alors j ais essayer differente methode à base de sed :
echo $texte | sed 's|\(.*>\).*\(<.*\)|\1& \2|'
Merci de votre coup de pouce
je cherche comme le titre in dique a faire une substituion qui mest plutot difficile
Aller des exemple et ce sera plus claire
ex transformer tatatat>toto<tatatatata en tatatat>t o t o <tatatatata
pour arriver à faire ca :
tataerq>bonjour comment ca va<tazrgthyjyjuht>bien et toi ?<tataiopkli_hjt>pas trop mal !<dhfgbrthtatatat>lol<tatatatazerdfcef>
tataerq>b o n j o u r c o m m e n t c a v a <tazrgthyjyjuht>b i e n e t t o i ? <tataiopkli_hjt>p a s t r o p m a l ! <dhfgbrthtatatat>l o l <tatatatazerdfcef>
ce dernière exemple pour dire que le motif peut ce répeter plusieur fois par ligne
alors j ais essayer differente methode à base de sed :
echo $texte | sed 's|\(.*>\).*\(<.*\)|\1& \2|'
Merci de votre coup de pouce
A voir également:
- Sed subsitution dans un texte entre > et <
- Texte de chanson gratuit pdf - Télécharger - Vie quotidienne
- Mettre un texte en majuscule - Guide
- Transcription audio en texte word gratuit - Guide
- Excel cellule couleur si condition texte - Guide
- Texte barré whatsapp - Guide
2 réponses
Je vien de trouver une solution mais plutot lourde:
var="tataerq>bonjour comment ca va<tazrgthyjyjuht>bien et toi ?<tataiopkli_hjt>pas trop mal !<dhfgbrthtatatat>lol<tatatatazerdfcef>"
texte="";
for i in $( echo $var | sed 's/>/>\n/g' | sed 's/</\n</g');
do
if [ "$(echo $i | grep "<" )" = "" ];
then
i=$(echo $i | sed 's/./& /g');
fi;
texte=${texte}$i;
done;
apparament ca marche ;D
var="tataerq>bonjour comment ca va<tazrgthyjyjuht>bien et toi ?<tataiopkli_hjt>pas trop mal !<dhfgbrthtatatat>lol<tatatatazerdfcef>"
texte="";
for i in $( echo $var | sed 's/>/>\n/g' | sed 's/</\n</g');
do
if [ "$(echo $i | grep "<" )" = "" ];
then
i=$(echo $i | sed 's/./& /g');
fi;
texte=${texte}$i;
done;
apparament ca marche ;D
Salut,
;-))
[tmpfs]$ echo $C
tataerq>bonjour comment ca va<tazrgthyjyjuht>bien et toi ?<tataiopkli_hjt>pas trop mal !<dhfgbrthtatatat>lol<tatatatazerdfcef>
[tmpfs]$ cat prog.sed
#n
:z
/>$/ {
1 !H
1 h
n
s/./& /g
H
n
$ !b z
H
g
s/\n//g
s/ //g
p
}
[tmpfs]$ echo $C | sed 's/>/&\n/g;s/</\n&/g'| sed '$d' | sed -f prog.sed
tataerq>b o n j o u r c o m m e n t c a v a <tazrgthyjyjuht>b i e n e t t o i ? <tataiopkli_hjt>p a s t r o p m a l ! <dhfgbrthtatatat>l o l <tatatatazerdfcef>
[tmpfs]$
;-))