# AWK Programmierung: Gibt es eine Methode "ersetzen"?



## thieltgj (2. Oktober 2007)

Hallo!

Bitte kann mir jemand bei einem Problem helfen?

Und zwar habe ich eine Textdatei mit ca 10 Spalten wobei ca 3 Spalten Zahlen in amerik. Notierung enthalten (z.B. 195.00) und ich diese in z.B. 195,00 umwandeln muss.

Bisher habe ich es mit folgendem Code versucht:

var_preis = $10      #meine Zahl, die ich umändern möchte steckt in Variable Nr.10

punkt = "\."            # den Punkt möchte ich in der Zahl

komma = ","          #durch das Komma ersetzen

ergebnis = gsub( punkt, komma, var_preis )    #gsub() scheint allerdings nur für Strings,               
                                                                     nicht für Zahlen geeignet...
print( ergebnis );

Es wird leider trotzdem die unveränderte Zahl ausgegeben....

Hat jemand eine Idee wie ich es noch versuchen könnte? (Es muss noch nicht mal unbedingt in AWK programmiert sein.)

Vielen Dank und liebe Grüße,
Jule


----------



## Culebra (3. Oktober 2007)

In Python könnte man das mit regulären Ausdrücken schnell machen:

```
>>> p
'195.00'
>>> q=re.sub(r'(\d+)\.(\d+)', r'\1,\2', p)
>>> q
'195,00'
```
Aber so etwas ähnliches sollte doch mit AWK auch möglich sein, denn die Sprache ist doch gerade für Textersatz gedacht.

Grüsse...


----------

