NumberFormatter: Bereichsbezogen, Global

  • Freigeben Version: Zurich
  • Aktualisiert 31. Juli 2025
  • 3 Minuten Lesedauer
  • Die NummerFormatter Die API enthält Methoden, die Zahlen zurückgeben, die gemäß der Sprache des aktuellen Anwenders formatiert sind.

    Diese API ist in bereichsbezogenen und globalen Apps verfügbar und wird in ausgeführt sn_i18n Namespace.

    Wenn sie nach Sprache oder Gebietsschema formatiert sind, können Anwender Zahlen wie erwartet anzeigen. Wenn das Gebietsschema beispielsweise fr (Französisch) ist, gibt ein als 100,00 angegebener Wert 100 zurück.

    NumberFormatter – Format(Nummernnummer)

    Gibt eine Zeichenfolgendarstellung einer Zahl zurück, die gemäß der Spracheinstellung des aktuellen Anwenders formatiert ist.

    Tabelle : 1. Parameter
    Name Typ Beschreibung
    Nummer Anzahl Anzahl beliebiger Größe.
    Tabelle : 2. Rückgaben
    Typ Beschreibung
    Zeichenfolge Zahl, die gemäß der Spracheinstellung des aktuellen Anwenders formatiert ist.

    Das folgende Beispiel zeigt die Rückgabeergebnisse für einen Anwender, dessen Sprache auf Spanisch festgelegt ist.

    gs.info("Number is: " + sn_i18n.NumberFormatter.format(123456.789));
    gs.info("Number is: " + sn_i18n.NumberFormatter.format(-123456.789));

    Ausgabe:

    Number is: 123.456,789
    Number is: -123.456,789

    NumberFormatter – formatLang(Nummernnummer, Zeichenfolgensprache)

    Gibt eine Zeichenfolgendarstellung einer Zahl zurück, die entsprechend der als Parameter übergebenen Sprache formatiert ist.

    Tabelle : 3. Parameter
    Name Typ Beschreibung
    Nummer Anzahl Anzahl beliebiger Größe.
    language Zeichenfolge Sprach-Tag gemäß IETF BCP-47.
    Tabelle : 4. Rückgaben
    Typ Beschreibung
    Zeichenfolge Zahl, die entsprechend der als Parameter übergebenen Sprache formatiert ist.

    Das folgende Beispiel zeigt die Ausgabe für die deutsche Spracheinstellung.

    gs.info("Number is: " + sn_i18n.NumberFormatter.formatLang(123456.789, "de-de"));
    gs.info("Number is: " + sn_i18n.NumberFormatter.formatLang(-123456.789, "de-de"));

    Ausgabe:

    Number is: 123.456,789
    Number is: -123.456,789

    NumberFormatter – parseWithLocale(Zeichenfolgennummer, Zeichenfolgensprache, Zeichenfolgenland)

    Analysiert eine Zahl aus einer übergebenen Textzeichenfolge und durchläuft sie von links nach rechts, um den numerischen Wert zu extrahieren. Anschließend werden die übergebenen Länder- und Sprachcodes verwendet, um das Gebietsschema der Nummer zu identifizieren, und die analysierte Nummer wird in diesem Format zurückgegeben.

    Diese Methode analysiert die Zeichenfolge, bis sie ein Zeichen erreicht, das sie nicht als numerischen Wert oder Währungstrennzeichen erkennt.

    Tabelle : 5. Parameter
    Name Typ Beschreibung
    Nummer Zeichenfolge Zu analysierende Zeichenfolge. Diese Zeichenfolge kann numerische Werte und Währungstrennzeichen wie Kommas und Dezimalstellen enthalten. Beispiel: „24,506,55“ Oder „45.677,89“ .
    language Zeichenfolge Zweistelliger ISO-639-Sprachcode.
    country Zeichenfolge Zweistelliger ISO-3166-Ländercode.
    Tabelle : 6. Rückgaben
    Typ Beschreibung
    Anzahl Analysierte Zahl im Format des angegebenen Gebietsschemas.

    Löst eine Ausnahme aus, wenn das erste Zeichen der Zeichenfolge nicht analysiert werden kann.

    Zum Beispiel:
    • „123.34“: Analysiert 123,34, solange das Dezimaltrennzeichen für das Gebietsschema ein Punkt ist.
    • „1.234,56“: Analysiert 1234,56, solange das Gruppierungstrennzeichen für Gebietsschema ein Komma und das Dezimaltrennzeichen ein Punkt ist.
    • „1.234.567,89“: Wenn das Gruppierungstrennzeichen nichts als ein Punkt ist, wird zu 1 analysiert.
    • „123x456“: Analysiert 123.
    • „Text123“: Bewirkt, dass die Methode eine ParseException auslöst.

    Das folgende Codebeispiel zeigt das Analysieren von Zeichenfolgen für verschiedene Gebietsschemata sowie das Analysieren einer Zeichenfolge mit unerwarteten Trennzeichen. Das letzte Beispiel analysiert die Zeichenfolge nur teilweise, da ein Leerzeichen kein gültiges Trennzeichen ist.

    var x = sn_i18n.NumberFormatter.parseWithLocale("48,837.77", "en", "US");
    var y =  sn_i18n.NumberFormatter.parseWithLocale("77.931,22", "de", "DE");
    var z = sn_i18n.NumberFormatter.parseWithLocale("562 339,89", "fr", "FR");
    var specialCase = sn_i18n.NumberFormatter.parseWithLocale("400 797,67", "en", "US");
    
    gs.info(x);
    gs.info(y);
    gs.info(z);
    gs.info(specialCase);

    Ausgabe:

    48837.77
    77931.22
    562339.89
    400

    NumberFormatter – parseWithSeparators(Zeichenfolgennummer, ZeichenfolgengroupingSeparator, Zeichenfolge decimalSeparator)

    Analysiert und gibt eine Zahl aus einer übergebenen Textzeichenfolge zurück, die von links nach rechts durchläuft wird, bis ein Zeichen gefunden wird, das nicht analysiert werden kann. Analysierbare Werte umfassen Zahlen und die angegebene Gruppierung und Dezimaltrennzeichen.

    Tabelle : 7. Parameter
    Name Typ Beschreibung
    Nummer Zeichenfolge Zu analysierende Zeichenfolge. Diese Zeichenfolge kann numerische Werte und die angegebenen Trennzeichen wie Kommas und Dezimalstellen enthalten. Beispiel: „24,506,55“ Oder „45.677,89“ .
    GroupingSeparator Zeichenfolge Zeichen, das das Gruppierungstrennzeichen (auch als Tausendertrennzeichen bezeichnet) innerhalb der übergebenen Zeichenfolge angibt.

    Beispiel: Komma „,“, Punkt „.“ oder Leerzeichen „ “.

    DezimalTrennzeichen Zeichenfolge Zeichen, das das Dezimaltrennzeichen innerhalb der übergebenen Zeichenfolge angibt.

    Beispiel: Komma „,“, Punkt „.“ oder Leerzeichen „ “.

    Tabelle : 8. Rückgaben
    Typ Beschreibung
    Anzahl Analysierte Nummer.

    Löst eine Ausnahme aus, wenn das erste Zeichen der Zeichenfolge nicht analysiert werden kann.

    Zum Beispiel:
    • „123.34“: Analysiert 123,34, solange das Dezimaltrennzeichen für das Gebietsschema ein Punkt ist.
    • „1.234,56“: Analysiert 1234,56, solange das Gruppierungstrennzeichen für Gebietsschema ein Komma und das Dezimaltrennzeichen ein Punkt ist.
    • „1.234.567,89“: Wenn das Gruppierungstrennzeichen nichts als ein Punkt ist, wird zu 1 analysiert.
    • „123x456“: Analysiert 123.
    • „Text123“: Bewirkt, dass die Methode eine ParseException auslöst.

    Das folgende Codebeispiel zeigt, wie Zahlen mithilfe verschiedener Trennzeichen analysiert werden. Beachten Sie, dass das endgültige Analysebeispiel nur die ersten drei Ziffern der Zahl analysiert, da ein Leerzeichen kein gültiges Trennzeichen ist.

    var x = sn_i18n.NumberFormatter.parseWithSeparators('48,837.77', ',', '.');
    var y =  sn_i18n.NumberFormatter.parseWithSeparators('77.931,22', '.', ',');
    var z = sn_i18n.NumberFormatter.parseWithSeparators('562 339,89', ' ', ',');
    var specialCase = sn_i18n.NumberFormatter.parseWithSeparators('400 797,67', '.', ',');
    
    gs.info(x);
    gs.info(y);
    gs.info(z);
    gs.info(specialCase);

    Ausgabe:

    48837.77
    77931.22
    562339.89
    400