Sed subsitution dans un texte entre > et <

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
Configuration: Opteron 165 / DFI Lan party Nf4 Ultra / 2 Go / Radeon HD 3870 / raid 5 4TO

2 réponses

  1. 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
    0
    1. Modérateur
      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]$

      ;-))
      0

      Discussions similaires

      remplacement avec sed

      8 réponses