kurze reg expressions frage.

Dieses Thema im Forum "Shell-Skripte" wurde erstellt von flappinski, 07.02.2007.

  1. #1 flappinski, 07.02.2007
    flappinski

    flappinski Foren As

    Dabei seit:
    31.03.2006
    Beiträge:
    87
    Zustimmungen:
    0
    an die sed -freaks:
    ich will die vierte Spalte (TAB-delim) mit rs beginnen, wenn sie mit einer Zahl beginnt. E§s funktioniert alles bis auf [:digit:]. Da muss ich doch bestimmt irgendwas machen. Kann mir jemand helfen?

    sed 's/\t[:digit:]/\trs/3'


    ich denke, mal die smlileys könnt ihr euch rausdenken?
     
  2. Anzeige

    Schau dir mal diese Kategorie an. Dort findest du bestimmt etwas.
    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren
  3. #2 Peregrine, 07.02.2007
    Peregrine

    Peregrine Honorarkonsul

    Dabei seit:
    03.08.2006
    Beiträge:
    338
    Zustimmungen:
    0
    Ort:
    München, Bayern, Germany
    :]

    Solltest du nicht ein

    Code:
    awk '{print $4}' filename
    voranstellen und darauf dann dein sed drauf anwenden?
     
  4. #3 flappinski, 07.02.2007
    flappinski

    flappinski Foren As

    Dabei seit:
    31.03.2006
    Beiträge:
    87
    Zustimmungen:
    0
    naja, dabei verliere ich ja die ersten 3 spalten, oder?

    o.k. hier ein Beispiel:

    rein:
    chr1 86900379 86900380 100002
    chr16 5749083 5749084 1000041
    chr1 86904027 86904028 rs100008
    chr1 86906492 86906493 rs100016


    raus:
    chr1 86900379 86900380 rs100002
    chr16 5749083 5749084 rs1000041
    chr1 86904027 86904028 rs100008
    chr1 86906492 86906493 rs100016


    mein erstes Beispiel findet zwar das richtige TAB, aber ersetzt die folgende Zahl mit.
    Im Moment so gelöst:

    grep rs FILENAME | sed 's/\t/\trs/3' > temp
    grep rs FILENAME >> temp
    mv temp FILENAME

    geht aber bestimmt eleganter, oder?
     
  5. dizzgo

    dizzgo Lernbereite Riesenratte

    Dabei seit:
    04.08.2005
    Beiträge:
    573
    Zustimmungen:
    0
    Ort:
    /ch/sg///
    Hallo

    Du hast nur eine eckige Klammer vergessen:
    Code:
    sed 's/\t[[:digit:]]/\trs/3'
    
    so sollts gehen...
    Und sonst, wenn dein 'sed' keine POSIX-Character-Classes unterstützt kannst du auch so machen:
    Code:
    sed 's/\t[1234567890]/\trs/3'
    #bzw
    sed 's/\t[0-9]/\trs/3'
    
    nicht elegant aber geht auch...

    Grüsse
    d22
     
  6. #5 flappinski, 07.02.2007
    flappinski

    flappinski Foren As

    Dabei seit:
    31.03.2006
    Beiträge:
    87
    Zustimmungen:
    0
    danke, das hatte ich allerdings inzwischen dann auch geschafft (also das mit [0-9]). ABER: leider wird diese erste Zahl mit gelöscht. und mit & gehts auch nicht, weil rs soll ja zwischen das TAB und die Zahl.
    Wisst Du weiter?
    Danke,
    Stephan
     
  7. Anzeige

    Vielleicht findest du HIER Antworten.
    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren
  8. Xanti

    Xanti Mouse Organist

    Dabei seit:
    05.09.2004
    Beiträge:
    1.855
    Zustimmungen:
    0
    Code:
    sed 's/\t\([[:digit:]]\)/\trs\1/3'
    
     
  9. #7 flappinski, 08.02.2007
    flappinski

    flappinski Foren As

    Dabei seit:
    31.03.2006
    Beiträge:
    87
    Zustimmungen:
    0
    yeah, danke! dat hab ich gesucht.
     
Thema:

kurze reg expressions frage.

Die Seite wird geladen...

kurze reg expressions frage. - Ähnliche Themen

  1. Gnome 3.20 rückt Tastaturkürzel wieder mehr in den Vordergrund

    Gnome 3.20 rückt Tastaturkürzel wieder mehr in den Vordergrund: Alle Apps, die Tastaturkürzel unterstützen, sollen mit einer Anzeige der verfügbaren Kürzel in Form eines eingeblendeten Fensters ausgestattet...
  2. Artikel: Ein kurzer Blick auf KDE Plasma 5

    Artikel: Ein kurzer Blick auf KDE Plasma 5: Ein frischer Wind weht bei KDE: Mit der künftigen Oberfläche Plasma 5 erneuern die KDE-Entwickler nicht nur die Optik des Desktops mit einem...
  3. Artikel: Sozi - Eine kurze Einführung in das Inkscape-Plugin

    Artikel: Sozi - Eine kurze Einführung in das Inkscape-Plugin: Wer heute seine Zuhörer nicht langweilen möchte, greift zu innovativen Präsentationskonzepten. Diese vermisst man unter Linux natürlich nicht, so...
  4. Eigene Tastaturkürzel lassen sich nicht aktivieren, Gnome

    Eigene Tastaturkürzel lassen sich nicht aktivieren, Gnome: Was ich auch mache, es tut sich nichts. Bei den voreingestellten Kürzeln geht alles wunderbar. Aber hier springt lediglich das Dialogfenster zum...
  5. kurze Vorstellung

    kurze Vorstellung: Mein Name ist Tim, ich bin 14 Jahre alt, und ich komme aus Baden-Württemberg, und mein exakter Wohnort ist: /home/tim Ich habe eigentlich...