Deklarieren Sie zunächst die Länge der Strings allgemein, die ein Attribut des Suchbegriffs sein wird. Die while Schleife ist für den Anfang recht übersichtlich und besagt eigentlich nur, daß das Kommando find samt besagter Kriterien vorhanden sein müssen. So steht npos für non position.

Anhand der Belegung einer Länge wird ein Begriff gefunden. Das macht die Deklaration string :: size_type x derart wichtig!

Wir tauschen die while Schleife gegen eine for Schleife aus und nun wird mit replace tatsächlich ersetzt. Hier sind drei Parameter nötig: die Größe der Strings allgemein, die Länge des Ersatzbegriffs ( dieser wird sonst nicht gefunden ) und der Ersatzbegriff unbestimmter Länge.

Die eigentliche Funktion des Suchens und Ersetzens wird in der Schleife bis zum Abbruch durch npos als Bedingung wiederholt.

String  |  while... do...  |  Iterator  |   for Schleife

  

  Zeichen.     

Sobald Sie einen Text in das linke Feld schreiben, werden die Zeichen in einer separaten Funktion per oninput mitgezählt. Ab 100 Zeichen wird in der Box, die die Zeichen zählt ein negativer Wert eingefügt. Versuchen Sie dann zu kopieren, ist das durch angegebenen Wert nicht möglich. Solange der Text kleiner als 100 Zeichen ist, funktioniert auch der Kopiervorgang. Oder Sie klicken auf Abbrechen?

bool'sches Kriterium

Texteingabe:

Zu suchender Text:

Ausgabe des Suchergebnisses:

Schreiben oder kopieren Sie einfach einen Text in das obere Textareal. Der Suchbegriff soll darunter eingegeben werden. Wenn Sie sich im Suchbegriff an die Vorlage halten, wird der Text unten als gefunden ausgegeben. Sobald Sie aber im Suchfeld vom Text der Vorlage abweichen, verändert sich das Ergebnis der Ausgabe.

Wichtig: Die Anzahl der Zeichen habe ich hier per HTML begrenzt. Und weil HTML kein Skript ist, erfolgt auch keine Meldung wie sonst.

Der Kern dieses Skripts ist der JavaSkript eigene include, der dem substring sehr ähnlich ist. Dann noch eine Bedingung des Typs bool dazu, mit etwas Farbe für die texteigene Warnung garnieren und fertig ist das Programm.

Vorangegangene Werte lassen sich per HTML sehr elegant löschen, ohne gleich eine Funktion schreiben zu müssen. Jedenfalls dann, wenn keine bestimmten Werte eingefügt werden sollen. Also etwa 1 als Divisor oder 0! = 1.

Substring  |  bool'sches Kriterium

Erster Textabschnitt:

Zweiter Textabschnitt:

Texte zusammen:

Anzahl der Wörter insgesamt:     

Schreiben Sie auch hier einen Text in den ersten Textabschnitt. Bei der Eingabe werden die Wörter dieses Abschnitts gezählt.

Wenn Sie nun einen weiteren Text im zweiten Abschnitt eingeben, dann wird die Anzahl der Wörter um diese neue Angabe erweitert. Sowohl der obere als auch der untere Text werden im dritten Feld zusammengefügt und die Gesamtzahl der Wörter angezeigt.

Nachträgliche Änderungen im ersten oder zweiten Feld werden aktualisiert.

Beim Zählen der Wörter ist sehr wichtig, daß nicht nur Leerzeichen ein Wort ausmachen, sondern auch Absätze. Sie brauchen somit zwei Routinen: eine für die Leerzeichen und eine für die Abstätze. Beide werden aber dann zusammengezählt ausgegeben.

Übrigens ist der Button Löschen meistens nicht mit einer eigenen Funtkion belegt; es reicht ein reset in HTML.
Wenn Sie allerdings spezielle Werte beim Zurücksetzen einfügen wollen, dann muss ein Skript her.

String  |  Appendix

Rund um den String gibt es viele Kommandos, die immer wieder gebraucht werden. Manche heissen unterschiedlich, funktionieren aber genauso. Achten Sie darauf, daß der Zählvorgang bei 0 beginnt. Manchmal muss man das mit i + 1 anders ausgeben.

Diese Kommandos sind immer als Output dargestellt. Etwaige Definitionen im Zusammenspiel mit anderen Variablen bleiben dem Nutzer überlassen.

Startseite  |  Hinweise und Impressum  |  Facebook  |  Twitter  |  Google plus