Ich habe ein Problem bei der Arbeit. Ich muss zwei Zahlen vergleichen, die als Zeichenfolgen aus zwei verschiedenen Datenbanken stammen. Die Zahlen können führende Nullen und / oder führende / nachfolgende Leerzeichen enthalten. So kann ich "0001 "
von einer Datenbank und " 1 "
von der anderen haben.
Ich habe das Problem in C # mit folgendem Code gelöst:
Func<string, string, bool> f = (a,b) => int.Parse(a.Trim()) == int.Parse(b.Trim())
Die Herausforderung
Dies ist eine wirklich einfache Herausforderung, geeignet für Anfänger und jede Art von esoterischen Sprachen. Wenn Sie zwei Zahlen als Zeichenfolgen mit führenden Nullen und / oder führenden / nachfolgenden Leerzeichen angeben, schreiben Sie den kürzesten Code, der prüft, ob die beiden Zeichenfolgen dieselbe Zahl darstellen.
- Die Eingaben müssen aus zwei Zeichenfolgen oder der Entsprechung in Ihrer Sprache bestehen (ein Zeichen-Array ist in Ordnung) und sie stellen immer ganzzahlige Werte dar, die größer als Null sind.
- Die Ausgabe muss aus zwei beliebigen konsistenten Werten bestehen, die einen Wahrheitswert und einen Falsey-Wert darstellen.
Beispiele
A B Result
----------------------------
"0001" "1 " true
"1450" "1450 " true
"0010001 " " 10001 " true
"0010000" " 10 " false
"101023" "101024" false
Das ist Code-Golf , also kann der kürzeste Code für jede Sprache gewinnen!