Laden...

Regex: In einem Durchgang Komma durch Punkt *und* Punkt durch Komma ersetzen

Erstellt von gpc44 vor 9 Jahren Letzter Beitrag vor 9 Jahren 5.756 Views
G
gpc44 Themenstarter:in
26 Beiträge seit 2012
vor 9 Jahren
Regex: In einem Durchgang Komma durch Punkt *und* Punkt durch Komma ersetzen

Hi,
gibt es eine Möglichkeit, in einem String in einem Durchgang Punkt durch Komma und Komma durch Punkt zu ersetzen.

_oldVal String = "111.222.333,444.555,6.77,8000";
=> Result
_newVal String = "111,222,333.444,555.6,77.8000";

(
Danke
LG
Nicole

etwa so: idealerweise mit Regex und in 1 Zeile 😉

 static void Main(string[] args)
        {
            String a = "111.222.333,444.555,6.77,8000";
            string z = a.Replace(".", ",")
                        .Replace(",", ".");

            Console.WriteLine(z);
            Console.ReadKey();
        }

LG
Nicole

2.223 Beiträge seit 2005
vor 9 Jahren

Hallo gpc44,

wie wäre es hiermit


var newStr = new Regex(@",|\.").Replace(input, match => match.Value == "." ? "," : ".");

Viele Grüße
Lars

G
gpc44 Themenstarter:in
26 Beiträge seit 2012
vor 9 Jahren

Hi Lars,

Du bist ein held.
Danke Dir!
LG
Nicole

LG
Nicole

2.921 Beiträge seit 2005
vor 9 Jahren

Hallo Nicole.

Dazu fällt mir etwas ein.

Falls Du deswegen Komma und Punkt ersetzen willst, weil Du später mit diesen Zahlen Rechnen willst, empfiehlt sich unbedingt:

System.Globalization

Beachtung zu schenken.
Da in verschiedenen Ländern 1000er Trennzeichen und Komma verschieden sind. Sonst wirst Du immer mit Suchen und Ersetzen arbeiten müssen.
.NET und C# haben aber schon alles dazu an Board.

Kurz: Du solltest für String/Zahlen-Konvertierungen nie irgendeine Funktion "Mach Komma aus Punkt" oder umgekehrt benötigen.

Just my two cents.

dr4g0n76

Seit der Erkenntnis, dass der Mensch eine Nachricht ist, erweist sich seine körperliche Existenzform als überflüssig.

P
157 Beiträge seit 2014
vor 9 Jahren

Falls du es nicht kennst : Expresso...damit kann man regex's erstellen und testen.

vg

Wenn's zum weinen nicht reicht, lach drüber!

C
224 Beiträge seit 2009
vor 9 Jahren

Auch ein gutes Tool von herbivore 😉:
On-the-fly Regex-Tester: Regex-Lab