Text / String in ein Array umwandeln
Um die ersten drei Textelemente als Array zu speichern:
index [0] Paul
index [1] Pauline
index [2] Apostel
function listArray (elem, index) { result.innerHTML += "index [" + index + "] " + elem.trim() + "<br>"; } let result = document.getElementById("result"); let simplestring = document.querySelector("#simplestring").innerHTML; // Text beim Komma trennen und 3 Elemente in Array speichern und ausgeben let felder = simplestring.split(',', 3); felder.forEach (listArray);
Am Rande: elem.trim(), um die Leerzeichen vor / nach den den Eingaben zu entfernen.
URL mit split in Pfad und Dateinamen trennen
window.location.pathname gibt den Pfad zur aktuellen Seite zurück. string.split teilt den Pfadnamen bei jedem / und speichert die einzelnen Segmente in einem Array.
Den letzten Teil des Pfads – z.B. den Dateiname der HTML-Datei – erreicht dann ein einfaches array.pop().
const loc = window.location.pathname; const path = loc.split("/"); const filename = path.pop(); console.log (filename);
split() mit regulärem Ausdruck
Es wird wohl wirklich meist das Komma sein, anhand dessen ein String in ein Array geteilt werden sollen. Wenn der String an verschiedenen Zeichen gesplittet werden soll, kann split() mit einem regulären Ausdruck aufgerufen werden.
index [0] Peter
index [1] Franz
index [2] Anton
index [3] Karl
index [4] Heinz
index [5] Achim
index [6] Hans
index [7] Hermann
Hier wird der String sowohl beim Komma als auch beim Bindestrich geteilt.
beim Bindestrich ────┐ │ beim Komma ────┐ │ │ │ ▼ ▼ let vornamen = signs.split(/,|-/); vornamen.forEach (listArray2);
Der Senkrecht-Strich (Pipe) zwischen den beiden Zeichen ist das ODER der regulären Ausdrücke.
Löcher im Array
Wenn der String beim Leerzeichen gesplittet wird und nicht sichergestellt ist, dass die Ausdrücke immer nur durch genau ein Blank getrennt sind, kann ein Array mit Löchern entstehen.
["Paul"," ","Pauline"," "," "," "," ","Postpaket"]
Auch wieder ein Fall für einen regulären Ausdruck:
Bei einem oder mehr Blanks
+
|
let notemp = emp.split(/\s+/);
index [0] Paul
index [1] Pauline
index [2] Paulus
index [3] Postpaket