Gunnar Bittersmann: ftx_cleartel_test

Beitrag lesen

@@Camping_RIDER

Mal ohne Flax: Offenbar ist die weitaus größte Zahl an gültigen deutschen Vorwahlen vierstellig (ohne Null). Deutlich. Warum nicht nur noch auf die Vorwahlen prüfen, die zwei-, drei-, oder fünfstellig sind? Diese Liste ist deutlich kürzer

Eine (Key/Value)-Liste wie

{
	⋮
	"30":"Berlin",
	"3301":"Oranienburg",
	"3302":"Hennigsdorf",
	"3303":"Birkenwerder",
	"3304":"Velten",
	"33051":"Nassenheide",
	"33053":"Zehlendorf Kr Oberhavel",
	"33054":"Liebenwalde",
	"33055":"Kremmen",
	"33056":"Mühlenbeck Kr Oberhavel",
	"3306":"Gransee",
	"3307":"Zehdenick",
	"33080":"Marienthal Kr Oberhavel",
	"33082":"Menz Kr Oberhavel",
	"33083":"Schulzendorf Kr Oberhavel",
	"33084":"Gutengermendorf",
	"33085":"Seilershof",
	"33086":"Grieben Kr Oberhavel",
	"33087":"Bredereiche",
	"33088":"Falkenthal",
	"33089":"Himmelpfort",
	"33093":"Fürstenberg Havel",
	"33094":"Löwenberg",
	"331":"Potsdam",
	⋮
}

ist wohl nicht die beste Datenstruktur, da sucht man sich dumm und dähmlich.

Man kann sich die Daten aber in einen Baum umformen:

{
	"1": { … },
	"2": { … },
	"3": {
		"0": "Berlin",
		"3": {
			"0": {
				"1":"Oranienburg",
				"2":"Hennigsdorf",
				"3":"Birkenwerder",
				"4":"Velten",
				"5": {
					"1":"Nassenheide",
					"3":"Zehlendorf Kr Oberhavel",
					"4":"Liebenwalde",
					"5":"Kremmen",
					"6":"Mühlenbeck Kr Oberhavel"
				},
				"6": "Gransee",
				"7": "Zehdenick",
				"8": {
					"0":"Marienthal Kr Oberhavel",
					"2":"Menz Kr Oberhavel",
					"3":"Schulzendorf Kr Oberhavel",
					"4":"Gutengermendorf",
					"5":"Seilershof",
					"6":"Grieben Kr Oberhavel",
					"7":"Bredereiche",
					"8":"Falkenthal",
					"9":"Himmelpfort"
				},
				"9": {
					"3":"Fürstenberg Havel",
					"4":"Löwenberg"
				}
			},
			"1": "Potsdam",
			"2": { … },
			⋮
		},
		"4": { … },
		⋮		
	},
	"4": { … },
	⋮		
}

Dann holt man sich aus der Telefonnummer (ohne 0 bzw. +49) das erste Zeichen, bspw. 3. Wenn mal dafür als Wert einen String erhält, hat man die komplette Vorwahl gefunden. Ist hier aber nicht der Fall, sondern man erhält ein Objekt (einen Unterbaum). Also das nächste Zeichen der Telefonnummer lesen, bspw. 0. Der dazugehörige Wert ist "Berlin". Fertig.

Wäre nach der ersten 3 noch eine 3 gekommen, würde man die nächste Ziffer aus der Telefonnummer holen, bspw. eine 0. Dafür erhält man wieder ein Objekt, also weiter, bspw. eine 8. Immer noch nicht beim Blatt angekommen; nächste Ziffer holen, bspw. 9. Das ergibt "Himmelpfort". Man ist beim Weihnachtsmann angekommen.

LLAP 🖖

--
Ist diese Antwort anstößig? Dann könnte sie nützlich sein.
0 108

input type="tel"

Jule
  • html
  1. 1
    MrMurphy1
    1. -1
      Jule
      1. 0
        MrMurphy1
      2. 0
        Gunnar Bittersmann
        • ux
        1. 0
          Jörg Reinholz
          1. 0
            Jule
            1. 0
              Christian Kruse
            2. 3
              MrMurphy1
          2. 3

            Offtopic / Codeschnipsel-Sammlung

            Camping_RIDER
        2. -1
          Jule
          1. 1
            Jörg Reinholz
            1. -1
              Jule
              1. 1
                Christian Kruse
              2. 0
                Jörg Reinholz
                1. 0
                  Jule
                  1. 3
                    Jörg Reinholz
                2. 0

                  ftx_cleartel_test

                  Jule
                  • php
                  1. 0
                    Jörg Reinholz
                    1. 0
                      Jule
                      1. 0
                        Jörg Reinholz
                        1. -1
                          Jule
                          1. 1
                            Camping_RIDER
                    2. 0
                      Gunnar Bittersmann
                      • sonstiges
                      1. 0
                        Jule
                        1. 0
                          Camping_RIDER
                          1. 0
                            Der Martin
                          2. 2
                            MudGuard
                          3. 2
                            Gunnar Bittersmann
                            • programmiertechnik
                            1. 1
                              Jörg Reinholz
                              1. 0

                                Neues Bastelzeug: Vorwahlen zu Array (json, php)

                                Jörg Reinholz
                                1. 0

                                  Bugfix: Vorwahlen zu Array (json, php)

                                  Jörg Reinholz
                            2. 0
                              Jörg Reinholz
                            3. 0
                              dedlfix
                              1. 0
                                Camping_RIDER
                                1. 0
                                  dedlfix
                                  1. 0
                                    Camping_RIDER
                                    1. 0
                                      dedlfix
                                      1. 0
                                        Camping_RIDER
                                        1. 0
                                          dedlfix
                                          1. 0
                                            Camping_RIDER
                                          2. 0
                                            Jörg Reinholz
                                            1. 0
                                              Camping_RIDER
                                              1. 0
                                                Jörg Reinholz
                                                1. 0
                                                  Camping_RIDER
                                                  1. 1
                                                    Jörg Reinholz
                                                    1. 0
                                                      Jörg Reinholz
                                                      1. 2

                                                        PHP7 gegen PHP5 - Messung

                                                        Jörg Reinholz
                                                        1. 0

                                                          HHVM gegen PHP7 gegen PHP5 - Messung

                                                          Jörg Reinholz
                                              2. 0
                                                Christian Kruse
                                                1. 0
                                                  Camping_RIDER
                                                  1. 0
                                                    Christian Kruse
                                                    1. 0
                                                      Camping_RIDER
                                                      1. 0
                                                        Der Martin
                                                        1. 0
                                                          Camping_RIDER
                                                  2. 0
                                                    Christian Kruse
                                                    1. 0
                                                      Camping_RIDER
                                                      1. 1
                                                        Christian Kruse
                              2. 0
                                Jörg Reinholz
                                1. 0
                                  MudGuard
                                  1. 0
                                    Jörg Reinholz
                                    1. 0
                                      woodfighter
                      2. 2
                        Christian Kruse
                  2. 0
                    Camping_RIDER
                    1. 0
                      Gunnar Bittersmann
                      • sonstiges
                      1. 0
                        Camping_RIDER
                        1. 0
                          MudGuard
                        2. 0
                          Gunnar Bittersmann
                          1. 0
                            Jule
                            1. 1
                              Gunnar Bittersmann
                              1. 0
                                Jule
                                1. 0
                                  Gunnar Bittersmann
                                  1. 0
                                    Jule
                                    1. 0
                                      Gunnar Bittersmann
                          2. 0
                            Camping_RIDER
                        3. 0
                          Jule
                3. 0
                  Gunnar Bittersmann
              3. 0
                Der Martin
                1. 0
                  Jule
                  1. 0
                    Der Martin
                    1. 0
                      Camping_RIDER
                    2. 0
                      Gunnar Bittersmann
                      • sonstiges
  2. 0
    Gunnar Bittersmann
    1. 0
      Jule
    2. 0
      Gunnar Bittersmann
      1. 0
        Jule
        1. 1
          Der Martin
          1. 1
            Gunnar Bittersmann
            • sonstiges
            • ux
        2. 0
          Jörg Reinholz
  3. 2
    Christian Kruse
  4. 0

    Telefonnummer-Formatierer

    Jörg Reinholz
    1. 0
      Jörg Reinholz
      1. 0
        woodfighter
        1. 0
          Jörg Reinholz
        2. 0
          Auge
          1. 0
            dedlfix
            1. 0
              Auge
              1. 0
                MudGuard
                1. 0
                  Auge
                2. 0
                  dedlfix
      2. 0
        MudGuard
        1. 0
          Jörg Reinholz
          1. 0
            MudGuard
            1. 0
              Jörg Reinholz
              1. 0
                Auge
                • html
                • links
                1. 0
                  Jörg Reinholz
                  1. 0

                    Verschachtelte Datenstruktur vs Binäre Suche

                    Camping_RIDER
        2. 0
          MudGuard