Aus Das deutschsprachige Scratch-Wiki

Oft ist es notwendig, eine Zeichenkette in mehrere Teile aufzuteilen. Benutzerdefinierte Blöcke ermöglichen eine flexible Methode, dies zu erreichen. Es gibt zwei Haupttypen der Zeichenkettenaufteilung: die Aufteilung in zwei Teile an einem Punkt und die Aufteilung in eine Liste an einem bestimmten Zeichen (oft in Verbindung mit Leerzeichen, um in Wörter aufzuteilen).

Aufteilung in zwei Variablen

Für das folgende Skript braucht man drei Variablen:

  • (zeichen) — eine Variable, die für die Iteration durch die Zeichenkette verwendet wird
  • (spaltung 1) — die Variable, die den ersten Teil der Zeichenkette enthält
  • (spaltung 2) — die Variable, die den zweiten Teil der Zeichenkette enthält

Definiere spalte Zeichenkette (string :: custom-arg) nach Charakter (charakter :: custom-arg)
setze [zeichen v] auf (0) // beginnt am Anfang
setze [spaltung 1 v] auf [] // initialisiere
setze [spaltung 2 v] auf []
setze [fehler v] auf [false]
falls <(charakter :: custom-arg) < ((Länge von (string :: custom-arg)) + (1))> , dann 
  wiederhole (charakter :: custom-arg) mal 
    ändere [zeichen v] um (1)
    setze [spaltung 1 v] auf (verbinde (spaltung 1) und (Zeichen (zeichen) von (string :: custom-arg)))
  end
  wiederhole ((Länge von (string :: custom-arg)) - (charakter :: custom-arg)) mal 
    ändere [zeichen v] um (1)
    setze [spaltung 2 v] auf (verbinde (spaltung 2) und (Zeichen (zeichen) von (string :: custom-arg)))
  end
sonst 
  setze [fehler v] auf [true]
end

In eine Liste spalten

For this script, three variables and a list will be needed. Für dieses Skript werden drei Variablen und eine Liste benötigt:

  • (zeichen) — verwendet, um durch die Zeichenkette zu iterieren
  • (spaltung 1) — wird verwendet, um den ersten Teil der Zeichenkette zu speichern
  • (spaltung 2) — zum Speichern des zweiten Teils der Zeichenkette
  • (gespaltet::list) — das Endergebnis
Definiere spalte Zeichenkette (string :: custom-arg) nach Charakter (charakter :: custom-arg)
setze [zeichen v] auf (0) // beginnt am Anfang
setze [spaltung 1 v] auf [] // initialisiere
setze [spaltung 2 v] auf []
setze [fehler v] auf [false]
lösche alles aus [gespaltet v]
falls <(charakter :: custom-arg) < ((Länge von (string :: custom-arg)) + (1))> , dann 
wiederhole (charakter :: custom-arg) mal 
ändere [zeichen v] um (1)
setze [spaltung 1 v] auf (verbinde (spaltung 1) und (Zeichen (zeichen) von (string :: custom-arg)))
end
füge (spaltung 1) zu [gespaltet v] hinzu
wiederhole ((Länge von (string :: custom-arg)) - (charakter :: custom-arg)) mal 
ändere [zeichen v] um (1)
setze [spaltung 2 v] auf (verbinde (spaltung 2) und (Zeichen (zeichen) von (string :: custom-arg)))
end
füge (spaltung 2) zu [gespaltet v] hinzu
sonst 
setze [fehler v] auf [true]
end

Demo


Das Projekt auf Scratch


Code zum Einbinden ins Forum:
[wiki=de:Zeichenketten aufteilen]Zeichenketten aufteilen[/wiki]
Cookies helfen uns bei der Bereitstellung von Das deutschsprachige Scratch-Wiki. Durch die Nutzung von Das deutschsprachige Scratch-Wiki erklärst du dich damit einverstanden, dass wir Cookies speichern.