Hallo,
Ich schreibe momentan meine Diplomarbeit und muss dabei Kommazahlen suchen bei denen anstelle des Kommas ein Punkt benutzt wurde. Geschrieben ist das ganze in LaTeX und ich möchte eigentlich gerne grep benutzen um die ganzen Quelldateien zu durchsuchen. Nur finde ich noch nicht die richtigen Parameter um zu suchen.
Folgendes habe ich versucht um erst mal nach normalen Kommazahlen zu suchen.
egrep '\d+\,\d+' datei.tex
egrep '[:digit]+\,[:digit]+' datei.tex
Da gibt er aber nichts aus, obwohl welche drin sind. Ich will einfach nur nach Kommata/Punkten suchen, die vorher und nacher eine oder mehr Ziffern haben...
Hat da jemand den Stupser in die richtige Richtung für mich?
Kommazahlen in Dokument finden
Hi,
das sieht fuer mich aus, als waere dein Problem wie gemacht für sed.
Ohne es getestet zu haben:
Damit sollten alle Punkte durch Kommas ersetzt werden, wenn das zu "aggressiv" ist, kannst du auch hier regulaere Ausdruecke verwenden.
<edit>Code angepasst</edit>
das sieht fuer mich aus, als waere dein Problem wie gemacht für sed.
Ohne es getestet zu haben:
Code: Alles auswählen
cat Datei_mit_punkt | sed -e "s/\./,/g' >datei_mit_komma
<edit>Code angepasst</edit>
Roland
"Aber wenn du schon so unwissend bist, davon noch nicht gehört zu haben,
so will ich es doch als gut ansehen, daß du lieber einmal töricht fragst,
als weiterhin nichts von etwas zu wissen, das man doch wissen sollte."
aus "Die Edda des Snorri Sturluson", "Gylfis Täuschung"
"Aber wenn du schon so unwissend bist, davon noch nicht gehört zu haben,
so will ich es doch als gut ansehen, daß du lieber einmal töricht fragst,
als weiterhin nichts von etwas zu wissen, das man doch wissen sollte."
aus "Die Edda des Snorri Sturluson", "Gylfis Täuschung"
Machs einfach so:
(funktioniert unter etch einwandfrei)
Code: Alles auswählen
export GREP_OPTIONS='--color=always'
export GREP_COLOR='1;46;37'
egrep "[[:digit:]],[[:digit:]]" komma.tex
In der Tat! Das klappt.ThorstenS hat geschrieben:Machs einfach so:(funktioniert unter etch einwandfrei)Code: Alles auswählen
export GREP_OPTIONS='--color=always' export GREP_COLOR='1;46;37' egrep "[[:digit:]],[[:digit:]]" komma.tex
Ich hatte wohl den Fehler gemacht, die beiden eckigen Klammern um das [:digit] Konstrukt wegzulassen. Allerdings hatte ich das am Anfang und da hatte er gemeckert. Aber vielleicht lag das dann auch wieder an den einfachen bzw. doppelten Anführungszeichen... Puuhh
Ich habe nun zum auffinden der bösen Punkte folgende Variante genutzt
Code: Alles auswählen
egrep -n "\[[[:digit:]]\.[[:digit:]]" *.tex
Vielen Dank euch zweien![/code]