{"id":628,"date":"2022-09-21T15:54:52","date_gmt":"2022-09-21T13:54:52","guid":{"rendered":"https:\/\/scratch.itbib4you.be\/?page_id=628"},"modified":"2022-11-16T15:22:24","modified_gmt":"2022-11-16T14:22:24","slug":"play-with-strings","status":"publish","type":"page","link":"https:\/\/scratch.itbib4you.be\/index.php\/play-with-strings\/","title":{"rendered":"Play with Strings"},"content":{"rendered":"\n<div class=\"wp-block-buttons is-layout-flex wp-block-buttons-is-layout-flex\">\n<div class=\"wp-block-button has-custom-width wp-block-button__width-25 has-custom-font-size has-small-font-size\"><a class=\"wp-block-button__link has-light-green-cyan-to-vivid-green-cyan-gradient-background has-background wp-element-button\" href=\"https:\/\/scratch.itbib4you.be\/\">Lesoverzicht<\/a><\/div>\n<\/div>\n\n\n\n<h2 class=\"wp-block-heading\">Inleiding<\/h2>\n\n\n\n<p>De titel van het hoofdstuk &#8216;Play with Strings&#8217; verwijst niet naar een of ander muziekinstrument of naar een summier stukje textiel. In IT wordt een <mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-bright-red-color\">string<\/mark> gedefinieerd als &#8220;een reeks tekens of karakters&#8221; (<a href=\"https:\/\/nl.wikipedia.org\/wiki\/Tekenreeks\">nl.wikipedia.org<\/a>). Jouw voornaam is een <mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-bright-red-color\">string<\/mark>. Jouw familienaam is een <mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-bright-red-color\">string<\/mark>. De naam van jouw gemeente is een <mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-bright-red-color\">string<\/mark>&#8230; Allerhande bewerkingen met strings zullen voortdurend nodig zijn om een programma samen te stellen: voornaam en familienaam moeten soms worden samengevoegd, de naam van de straat zal moeten worden aangevuld met het huisnummer, de postcode en de naam van de gemeente om een adres te vormen&#8230; Scratch biedt standaard een aantal functies om met strings te werken: de lengte van een string bepalen, een karakter uit een string opvragen, strings samenvoegen. Een aantal van deze functies werden reeds in vorige hoofdstukken ge\u00efllustreerd.<\/p>\n\n\n\n<p>In deze les willen we een aantal nieuwe functies als procedures (<mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-bright-red-color\">Mijn blokken<\/mark>) toevoegen om het \u2018spelen&#8217; met <mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-bright-red-color\">strings<\/mark> te vereenvoudigen.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Substring<\/h2>\n\n\n\n<p>Een <mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-bright-red-color\">substring<\/mark> is een deel van een bestaande string. Het woord &#8216;<em>Limburg<\/em>&#8216; is bijvoorbeeld een <mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-bright-red-color\">substring<\/mark> van de string &#8216;<em>Provincie Limburg<\/em>&#8216;. De procedure die we in deze paragraaf wensen te ontwikkelen moet de mogelijkheid bieden om een aantal karakters op te halen vanaf een bepaalde startpositie in een bestaande tekst. Om het woord \u2018<em>Limburg<\/em>\u2019 op te halen in de string \u2018<em>Provincie Limburg<\/em>\u2019 zou de startpositie op 11 moeten worden geplaatst (9 karakters voor het woord \u2018<em>Provincie<\/em>\u2019+ 1 spatie = 10 karakters, de letter \u2018<em>L<\/em>\u2019 begint dan op de 11<sup>de<\/sup>&nbsp;positie) en het aantal gewenste karakters op 7.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Een nieuw blok defini\u00ebren<\/h3>\n\n\n\n<p>We kunnen nooit weten welke variabelen in een programma zullen worden gebruikt. Dit maakt het natuurlijk moeilijk om een algemene functie <mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-bright-red-color\">substring<\/mark> te cre\u00ebren waarbij we de naam van de oorspronkelijke <mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-bright-red-color\">string<\/mark>-variabele nog niet kennen.  <\/p>\n\n\n\n<p>Scratch biedt de mogelijkheid om de inhoud van een bestaande variabele door te geven aan een nieuwe variabele in een blok. Voor een <mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-bright-red-color\">substring<\/mark> moeten we drie gegevens doorsturen naar het <mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-bright-red-color\">substring<\/mark>-blok: de oorspronkelijke string, de startpositie en de lengte. Deze gegevens zijn noodzakelijk om de procedure te laten werken.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/scratch.itbib4you.be\/wp-content\/uploads\/2022\/09\/Les_9_1-1024x767.png\" alt=\"Maak een blok\" class=\"wp-image-636\" width=\"433\" height=\"323\" srcset=\"https:\/\/scratch.itbib4you.be\/wp-content\/uploads\/2022\/09\/Les_9_1-1024x767.png 1024w, https:\/\/scratch.itbib4you.be\/wp-content\/uploads\/2022\/09\/Les_9_1-300x225.png 300w, https:\/\/scratch.itbib4you.be\/wp-content\/uploads\/2022\/09\/Les_9_1-768x575.png 768w, https:\/\/scratch.itbib4you.be\/wp-content\/uploads\/2022\/09\/Les_9_1-1200x899.png 1200w, https:\/\/scratch.itbib4you.be\/wp-content\/uploads\/2022\/09\/Les_9_1.png 1420w\" sizes=\"auto, (max-width: 433px) 85vw, 433px\" \/><figcaption class=\"wp-element-caption\">Maak een blok<\/figcaption><\/figure>\n<\/div>\n\n\n<p>Bij het defini\u00ebren van een nieuw blok wordt de naam van het blok bovenaan ingevoerd. Onderaan zijn 3 bijkomende knoppen beschikbaar: <mark style=\"background-color:#007acc\" class=\"has-inline-color\">Voeg een invoer toe &#8211; getal of tekst<\/mark>, <mark style=\"background-color:#007acc\" class=\"has-inline-color\">Voeg een invoer toe &#8211; boolean<\/mark>, <mark style=\"background-color:#007acc\" class=\"has-inline-color\">Voeg een label toe<\/mark>.<\/p>\n\n\n\n<p>Het <mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-bright-red-color\">substring<\/mark>-blok moet kunnen beschikken over 3 gegevens: de oorspronkelijke tekst (variabele <mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-bright-red-color\">Tekst<\/mark>), de startpositie (variabele <mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-bright-red-color\">Start<\/mark>) en het aantal karakters die we willen opvragen (variabele <mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-bright-red-color\">Aantal<\/mark>). <mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-bright-red-color\">Tekst<\/mark>, <mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-bright-red-color\">Start<\/mark> en <mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-bright-red-color\">Aantal<\/mark> zijn dan 3 variabelen die enkel bruikbaar zullen zijn binnen deze procedure.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"alignleft size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/scratch.itbib4you.be\/wp-content\/uploads\/2022\/09\/Les_9_2.png\" alt=\"parameters\" class=\"wp-image-638\" width=\"283\" height=\"71\"\/><figcaption class=\"wp-element-caption\">Blok met toegevoegde variabelen<\/figcaption><\/figure>\n<\/div>\n\n\n<p>De definitie van deze variabelen kan gebeuren via de knop <mark style=\"background-color:#007acc\" class=\"has-inline-color\">Voeg een invoer toe &#8211; getal of tekst<\/mark>. Bij het indrukken van deze knop (<mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-bright-red-color\">zie rode pijl<\/mark>op bovenstaande schermafdruk) wordt \u00e9\u00e9n element toegevoegd waarin de naam van de <mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-bright-red-color\">blok<\/mark>-variabele kan worden ingebracht. Bij het aanroepen van deze procedure zullen deze variabelen dan moeten worden ingevuld met bepaalde waarden. Soms noemt men deze variabelen ook <mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-bright-red-color\">parameters<\/mark>.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Substring: pseudocode<\/h3>\n\n\n\n<p>De variabelen <mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-bright-red-color\">Tekst<\/mark>, <mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-bright-red-color\">Start<\/mark> en <mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-bright-red-color\">Aantal<\/mark> werden reeds gedefinieerd. Deze variabelen zullen worden opgevuld vanuit andere delen van het programma. Deze &#8216;speciale&#8217; variabelen kunnen worden gebruikt maar kunnen niet worden gewijzigd. Daarom kopi\u00ebren we de variabele <mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-bright-red-color\">Start<\/mark> in een nieuwe variabele <mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-bright-red-color\">Positie<\/mark>. De variabele <mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-bright-red-color\">Positie<\/mark> kan dan meerdere malen worden verhoogd. Het resultaat van de <mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-bright-red-color\">substring<\/mark>-procedure wordt een tekst die we terug willen bezorgen aan het onderdeel dat het <mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-bright-red-color\">substring<\/mark>-blok heeft opgeroepen. Ik gebruik steeds de  variabele <mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-bright-red-color\">MyReturn<\/mark> om het resultaat van een functie te stockeren. Deze variabele moet je dan op een &#8216;normale&#8217; manier cre\u00ebren via de bekende knop <mark style=\"background-color:#007acc\" class=\"has-inline-color\">Maak een variabele<\/mark>. Zoals steeds kan je de naam van deze variabele natuurlijk zelf bepalen. <\/p>\n\n\n\n<pre class=\"wp-block-code has-small-font-size\" style=\"line-height:1.4\"><code>Maak de variabele MyReturn leeg\nPlaats de variabele Start in de variabele Positie\nRepeat Aantal Times\n   Voeg de letter op plaats Positie toe aan de variabele MyReturn\n   Verhoog de variabele Positie met 1\nEnd Repeat<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">Substring: Scratch-Programma<\/h3>\n\n\n\n<p>Het <mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-bright-red-color\">substring<\/mark>-blok kan nu als volgt worden geprogrammeerd:<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/scratch.itbib4you.be\/wp-content\/uploads\/2022\/09\/Les_9_3.png\" alt=\"substring-blok\" class=\"wp-image-648\" width=\"433\" height=\"260\" srcset=\"https:\/\/scratch.itbib4you.be\/wp-content\/uploads\/2022\/09\/Les_9_3.png 952w, https:\/\/scratch.itbib4you.be\/wp-content\/uploads\/2022\/09\/Les_9_3-300x181.png 300w, https:\/\/scratch.itbib4you.be\/wp-content\/uploads\/2022\/09\/Les_9_3-768x463.png 768w\" sizes=\"auto, (max-width: 433px) 85vw, 433px\" \/><figcaption class=\"wp-element-caption\">substring-blok<\/figcaption><\/figure>\n<\/div>\n\n\n<h3 class=\"wp-block-heading\">Substring: substring-blok oproepen<\/h3>\n\n\n\n<p>In volgend Scratch-programma maak ik gebruik van de pas gecre\u00eberde <mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-bright-red-color\">substring<\/mark>-functie:<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/scratch.itbib4you.be\/wp-content\/uploads\/2022\/09\/Les_9_4.png\" alt=\"Het substring-blok gebruiken\n\" class=\"wp-image-649\" width=\"187\" height=\"201\" srcset=\"https:\/\/scratch.itbib4you.be\/wp-content\/uploads\/2022\/09\/Les_9_4.png 386w, https:\/\/scratch.itbib4you.be\/wp-content\/uploads\/2022\/09\/Les_9_4-278x300.png 278w\" sizes=\"auto, (max-width: 187px) 85vw, 187px\" \/><figcaption class=\"wp-element-caption\">substring oproepen<\/figcaption><\/figure>\n<\/div>\n\n\n<p>Het <mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-bright-red-color\">substring<\/mark>-blok om de procedure op te roepen vinden we in de categorie <mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-bright-red-color\">Mijn blokken<\/mark>.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/scratch.itbib4you.be\/wp-content\/uploads\/2022\/09\/Les_9_5_1.png\" alt=\"substring oproepen\" class=\"wp-image-659\" width=\"249\" height=\"167\" srcset=\"https:\/\/scratch.itbib4you.be\/wp-content\/uploads\/2022\/09\/Les_9_5_1.png 536w, https:\/\/scratch.itbib4you.be\/wp-content\/uploads\/2022\/09\/Les_9_5_1-300x201.png 300w\" sizes=\"auto, (max-width: 249px) 85vw, 249px\" \/><figcaption class=\"wp-element-caption\">substring oproepen<\/figcaption><\/figure>\n<\/div>\n\n\n<p>Bij het oproepen van het <mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-bright-red-color\">substring<\/mark>-blok moeten we alle gegevens doorgeven die nodig zijn om het <mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-bright-red-color\">substring<\/mark>-blok te laten werken. Het <mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-bright-red-color\">substring<\/mark>-blok krijgt steeds een kopie van de gegevens beschikbaar in het oproepende blok. Soms noemt men deze gegevens ook <mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-bright-red-color\">argumenten<\/mark>.<\/p>\n\n\n\n<p>De &#8216;speciale&#8217; variabele <mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-bright-red-color\">Tekst<\/mark> wordt opgevuld met de gegevens die zich in de variabele <mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-bright-red-color\">antwoord<\/mark> bevinden, de variabele <mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-bright-red-color\">Start<\/mark> krijgt de waarde 11 en de variabele <mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-bright-red-color\">Aantal<\/mark> krijgt de waarde 7. <\/p>\n\n\n\n<p>Als we het programma nu uitvoeren met onze testgegevens (&#8216;<em>Provincie Limburg<\/em>&#8216;) dan krijgen we het gewenste resultaat (&#8216;<em>Limburg<\/em>&#8216;).<\/p>\n\n\n\n<p>Bemerk tevens dat ik de variabele <mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-bright-red-color\">MyReturn<\/mark> in het oproepende script  onmiddellijk kopieer naar een nieuwe variabele (variabele <mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-bright-red-color\">Resultaat<\/mark>). Op deze manier komt de variabele <mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-bright-red-color\">MyReturn<\/mark> steeds opnieuw beschikbaar.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Rtrim<\/h2>\n\n\n\n<p>Strings bevatten soms een reeks spaties op het einde van de string. Dit kan tot onverwachte resultaten leiden zeker als je dergelijke strings gaat samenvoegen. Denk hierbij maar even aan de situatie waarbij de variabele <mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-bright-red-color\">VoorNaam<\/mark> de waarde Thomas&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; zou bevatten en de variabele <mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-bright-red-color\">FamilieNaam<\/mark> de waarde Mertens&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;. Als je beide gegevens nadien zou samenvoegen dan bekom je Thomas&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;     Mertens&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;     . Deze string kan je toch moeilijk op een adreslabel drukken! De procedure <mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-bright-red-color\">rtrim<\/mark> moet ons toelaten om overtollige spaties op het einde (rechts) van de string te verwijderen.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Rtrim: Variabelen<\/h3>\n\n\n\n<p>De procedure zal andermaal een string ontvangen waarvan de spaties op het einde moeten worden verwijderd. Deze string kunnen we opnieuw <mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-bright-red-color\">Tekst<\/mark> noemen. De gewijzigde string (zonder spaties op het einde) kunnen we dan bewaren in de variabele <mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-bright-red-color\">MyReturn<\/mark>.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Rtrim: Algoritme<\/h3>\n\n\n\n<p>We starten op het einde van de string <mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-bright-red-color\">Tekst<\/mark> en bekijken het laatste karakter. Als dit karakter een spatie is dan bekijken we onmiddellijk het voorgaande karakter,&#8230; Dit gaat zo verder tot er een niet-blanco karakter wordt ontmoet. De lus stopt dus op het moment dat het bestudeerde karakter niet gelijk is aan een spatie. De plaats waar dit niet-blanco karakter werd gevonden is natuurlijk heel belangrijk. Deze plaats kunnen we bijhouden in de variabele <mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-bright-red-color\">Positie<\/mark>. Nadien  kunnen alle karakters startend vanaf het eerste karakter tot en met het karakter op de plaats <mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-bright-red-color\">Positie<\/mark> worden gekopieerd naar de variabele <mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-bright-red-color\">MyReturn<\/mark>. Hierbij kunnen we gebruik maken van de zopas ontwikkelde <mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-bright-red-color\">substring<\/mark>&#8211; procedure.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Rtrim: Pseudocode<\/h3>\n\n\n\n<p>De pseudocode kan als volgt worden voorgesteld:<\/p>\n\n\n\n<pre class=\"wp-block-code has-small-font-size\" style=\"line-height:1.4\"><code>Maak de variabele MyReturn leeg\nPlaats de lengte van de Tekst in de variabele Positie\nRepeat Until het karakter op de plaats Positie van Tekst niet gelijk is aan een spatie\n   Verminder de variabele Positie met 1\nEnd Repeat\nsubstring(Tekst, 1, Positie)<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">Rtrim: Scratch-Programma<\/h3>\n\n\n\n<p>Het rtrim-blok kan nu als volgt worden ontwikkeld in Scratch:<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/scratch.itbib4you.be\/wp-content\/uploads\/2022\/09\/Les_9_6.png\" alt=\"rtrim\" class=\"wp-image-720\" width=\"339\" height=\"282\" srcset=\"https:\/\/scratch.itbib4you.be\/wp-content\/uploads\/2022\/09\/Les_9_6.png 714w, https:\/\/scratch.itbib4you.be\/wp-content\/uploads\/2022\/09\/Les_9_6-300x249.png 300w\" sizes=\"auto, (max-width: 339px) 85vw, 339px\" \/><figcaption class=\"wp-element-caption\">rtrim-blok<\/figcaption><\/figure>\n<\/div>\n\n\n<p>De <mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-bright-red-color\">herhaal tot<\/mark>-instructie lijkt wat complex maar is gemakkelijk te begrijpen op basis van de pseudocode: blijf de lus uitvoeren totdat de bestudeerde letter in de tekst&nbsp;<mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-bright-red-color\">niet<\/mark><em>&nbsp;<\/em>gelijk is aan een spatie. In dit geval combineren we twee functies waarbij de functie <img loading=\"lazy\" decoding=\"async\" width=\"90\" height=\"26\" class=\"wp-image-748\" style=\"width: 90px;\" src=\"https:\/\/scratch.itbib4you.be\/wp-content\/uploads\/2022\/10\/Les_9_10.png\" alt=\"Controleren op gelijkheid\"> (categorie <mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-bright-red-color\">Functies<\/mark>) is ingebouwd in de functie <img loading=\"lazy\" decoding=\"async\" width=\"70\" height=\"28\" class=\"wp-image-749\" style=\"width: 70px;\" src=\"https:\/\/scratch.itbib4you.be\/wp-content\/uploads\/2022\/10\/Les_9_11.png\" alt=\"not-functie\"> (categorie <mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-bright-red-color\">Functies<\/mark>).<\/p>\n\n\n\n<p>De <mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-bright-red-color\">rtrim<\/mark>-functie kan je nu als volgt oproepen:<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/scratch.itbib4you.be\/wp-content\/uploads\/2022\/09\/Les_9_7.png\" alt=\"rtrim oproepen\" class=\"wp-image-721\" width=\"206\" height=\"224\" srcset=\"https:\/\/scratch.itbib4you.be\/wp-content\/uploads\/2022\/09\/Les_9_7.png 384w, https:\/\/scratch.itbib4you.be\/wp-content\/uploads\/2022\/09\/Les_9_7-276x300.png 276w\" sizes=\"auto, (max-width: 206px) 85vw, 206px\" \/><figcaption class=\"wp-element-caption\">rtrim oproepen<\/figcaption><\/figure>\n<\/div>\n\n\n<h2 class=\"wp-block-heading\">Ltrim<\/h2>\n\n\n\n<p>De <mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-bright-red-color\">ltrim<\/mark>-procedure is vergelijkbaar met de <mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-bright-red-color\">rtrim<\/mark>-procedure.<mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-bright-red-color\">ltrim<\/mark> zal alle spaties verwijderen in het begin van een string. In dit geval moeten we onze logica natuurlijk starten vanaf de eerste positie van de string.<\/p>\n\n\n\n<p>Het volgende <mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-bright-red-color\">ltrim<\/mark>-programma is gemakkelijk te begrijpen op basis van de bespreking van het <mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-bright-red-color\">rtrim<\/mark>-blok: <\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/scratch.itbib4you.be\/wp-content\/uploads\/2022\/10\/Les_9_8a.png\" alt=\"ltrim\" class=\"wp-image-735\" width=\"346\" height=\"292\" srcset=\"https:\/\/scratch.itbib4you.be\/wp-content\/uploads\/2022\/10\/Les_9_8a.png 708w, https:\/\/scratch.itbib4you.be\/wp-content\/uploads\/2022\/10\/Les_9_8a-300x253.png 300w\" sizes=\"auto, (max-width: 346px) 85vw, 346px\" \/><figcaption class=\"wp-element-caption\">ltrim-blok<\/figcaption><\/figure>\n<\/div>\n\n\n<h2 class=\"wp-block-heading\">Trimall<\/h2>\n\n\n\n<p>De <mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-bright-red-color\">trimall<\/mark>-procedure verwijdert alle spaties uit een tekst.<\/p>\n\n\n\n<p>Ook dit programma is heel gemakkelijk te begrijpen op basis van vorige besprekingen.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/scratch.itbib4you.be\/wp-content\/uploads\/2022\/10\/Les_9_9.png\" alt=\"trimall\" class=\"wp-image-738\" width=\"487\" height=\"361\" srcset=\"https:\/\/scratch.itbib4you.be\/wp-content\/uploads\/2022\/10\/Les_9_9.png 972w, https:\/\/scratch.itbib4you.be\/wp-content\/uploads\/2022\/10\/Les_9_9-300x223.png 300w, https:\/\/scratch.itbib4you.be\/wp-content\/uploads\/2022\/10\/Les_9_9-768x570.png 768w\" sizes=\"auto, (max-width: 487px) 85vw, 487px\" \/><figcaption class=\"wp-element-caption\">trimall-blok<\/figcaption><\/figure>\n<\/div>\n\n\n<div class=\"wp-block-buttons is-layout-flex wp-block-buttons-is-layout-flex\">\n<div class=\"wp-block-button has-custom-width wp-block-button__width-25 has-custom-font-size is-style-fill has-small-font-size\"><a class=\"wp-block-button__link has-blush-bordeaux-gradient-background has-background wp-element-button\" href=\"https:\/\/scratch.itbib4you.be\/index.php\/communicatie-tussen-sprites\/\">Volgende Les<\/a><\/div>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>Inleiding De titel van het hoofdstuk &#8216;Play with Strings&#8217; verwijst niet naar een of ander muziekinstrument of naar een summier stukje textiel. In IT wordt een string gedefinieerd als &#8220;een reeks tekens of karakters&#8221; (nl.wikipedia.org). Jouw voornaam is een string. Jouw familienaam is een string. De naam van jouw gemeente is een string&#8230; Allerhande bewerkingen &hellip; <a href=\"https:\/\/scratch.itbib4you.be\/index.php\/play-with-strings\/\" class=\"more-link\">Lees verder<span class=\"screen-reader-text\"> &#8220;Play with Strings&#8221;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-628","page","type-page","status-publish","hentry"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.4 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Play with Strings - Scratch 3<\/title>\n<meta name=\"description\" content=\"De les Play with Strings ontwikkelt een aantal nieuwe blokken die van nut kunnen zijn bij het behandelen van teksten.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/scratch.itbib4you.be\/index.php\/play-with-strings\/\" \/>\n<meta property=\"og:locale\" content=\"nl_BE\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Play with Strings - Scratch 3\" \/>\n<meta property=\"og:description\" content=\"De les Play with Strings ontwikkelt een aantal nieuwe blokken die van nut kunnen zijn bij het behandelen van teksten.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/scratch.itbib4you.be\/index.php\/play-with-strings\/\" \/>\n<meta property=\"og:site_name\" content=\"Scratch 3\" \/>\n<meta property=\"article:modified_time\" content=\"2022-11-16T14:22:24+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/scratch.itbib4you.be\/wp-content\/uploads\/2022\/09\/Les_9_1-1024x767.png\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Geschatte leestijd\" \/>\n\t<meta name=\"twitter:data1\" content=\"9 minuten\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/scratch.itbib4you.be\\\/index.php\\\/play-with-strings\\\/\",\"url\":\"https:\\\/\\\/scratch.itbib4you.be\\\/index.php\\\/play-with-strings\\\/\",\"name\":\"Play with Strings - Scratch 3\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/scratch.itbib4you.be\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/scratch.itbib4you.be\\\/index.php\\\/play-with-strings\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/scratch.itbib4you.be\\\/index.php\\\/play-with-strings\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/scratch.itbib4you.be\\\/wp-content\\\/uploads\\\/2022\\\/09\\\/Les_9_1-1024x767.png\",\"datePublished\":\"2022-09-21T13:54:52+00:00\",\"dateModified\":\"2022-11-16T14:22:24+00:00\",\"description\":\"De les Play with Strings ontwikkelt een aantal nieuwe blokken die van nut kunnen zijn bij het behandelen van teksten.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/scratch.itbib4you.be\\\/index.php\\\/play-with-strings\\\/#breadcrumb\"},\"inLanguage\":\"nl-BE\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/scratch.itbib4you.be\\\/index.php\\\/play-with-strings\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"nl-BE\",\"@id\":\"https:\\\/\\\/scratch.itbib4you.be\\\/index.php\\\/play-with-strings\\\/#primaryimage\",\"url\":\"https:\\\/\\\/scratch.itbib4you.be\\\/wp-content\\\/uploads\\\/2022\\\/09\\\/Les_9_1.png\",\"contentUrl\":\"https:\\\/\\\/scratch.itbib4you.be\\\/wp-content\\\/uploads\\\/2022\\\/09\\\/Les_9_1.png\",\"width\":1420,\"height\":1064,\"caption\":\"Maak een blok\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/scratch.itbib4you.be\\\/index.php\\\/play-with-strings\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/scratch.itbib4you.be\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Play with Strings\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/scratch.itbib4you.be\\\/#website\",\"url\":\"https:\\\/\\\/scratch.itbib4you.be\\\/\",\"name\":\"Scratch 3\",\"description\":\"Leer programmeren met Scratch 3\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/scratch.itbib4you.be\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"nl-BE\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Play with Strings - Scratch 3","description":"De les Play with Strings ontwikkelt een aantal nieuwe blokken die van nut kunnen zijn bij het behandelen van teksten.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/scratch.itbib4you.be\/index.php\/play-with-strings\/","og_locale":"nl_BE","og_type":"article","og_title":"Play with Strings - Scratch 3","og_description":"De les Play with Strings ontwikkelt een aantal nieuwe blokken die van nut kunnen zijn bij het behandelen van teksten.","og_url":"https:\/\/scratch.itbib4you.be\/index.php\/play-with-strings\/","og_site_name":"Scratch 3","article_modified_time":"2022-11-16T14:22:24+00:00","og_image":[{"url":"https:\/\/scratch.itbib4you.be\/wp-content\/uploads\/2022\/09\/Les_9_1-1024x767.png","type":"","width":"","height":""}],"twitter_card":"summary_large_image","twitter_misc":{"Geschatte leestijd":"9 minuten"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/scratch.itbib4you.be\/index.php\/play-with-strings\/","url":"https:\/\/scratch.itbib4you.be\/index.php\/play-with-strings\/","name":"Play with Strings - Scratch 3","isPartOf":{"@id":"https:\/\/scratch.itbib4you.be\/#website"},"primaryImageOfPage":{"@id":"https:\/\/scratch.itbib4you.be\/index.php\/play-with-strings\/#primaryimage"},"image":{"@id":"https:\/\/scratch.itbib4you.be\/index.php\/play-with-strings\/#primaryimage"},"thumbnailUrl":"https:\/\/scratch.itbib4you.be\/wp-content\/uploads\/2022\/09\/Les_9_1-1024x767.png","datePublished":"2022-09-21T13:54:52+00:00","dateModified":"2022-11-16T14:22:24+00:00","description":"De les Play with Strings ontwikkelt een aantal nieuwe blokken die van nut kunnen zijn bij het behandelen van teksten.","breadcrumb":{"@id":"https:\/\/scratch.itbib4you.be\/index.php\/play-with-strings\/#breadcrumb"},"inLanguage":"nl-BE","potentialAction":[{"@type":"ReadAction","target":["https:\/\/scratch.itbib4you.be\/index.php\/play-with-strings\/"]}]},{"@type":"ImageObject","inLanguage":"nl-BE","@id":"https:\/\/scratch.itbib4you.be\/index.php\/play-with-strings\/#primaryimage","url":"https:\/\/scratch.itbib4you.be\/wp-content\/uploads\/2022\/09\/Les_9_1.png","contentUrl":"https:\/\/scratch.itbib4you.be\/wp-content\/uploads\/2022\/09\/Les_9_1.png","width":1420,"height":1064,"caption":"Maak een blok"},{"@type":"BreadcrumbList","@id":"https:\/\/scratch.itbib4you.be\/index.php\/play-with-strings\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/scratch.itbib4you.be\/"},{"@type":"ListItem","position":2,"name":"Play with Strings"}]},{"@type":"WebSite","@id":"https:\/\/scratch.itbib4you.be\/#website","url":"https:\/\/scratch.itbib4you.be\/","name":"Scratch 3","description":"Leer programmeren met Scratch 3","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/scratch.itbib4you.be\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"nl-BE"}]}},"_links":{"self":[{"href":"https:\/\/scratch.itbib4you.be\/index.php\/wp-json\/wp\/v2\/pages\/628","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/scratch.itbib4you.be\/index.php\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/scratch.itbib4you.be\/index.php\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/scratch.itbib4you.be\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/scratch.itbib4you.be\/index.php\/wp-json\/wp\/v2\/comments?post=628"}],"version-history":[{"count":54,"href":"https:\/\/scratch.itbib4you.be\/index.php\/wp-json\/wp\/v2\/pages\/628\/revisions"}],"predecessor-version":[{"id":823,"href":"https:\/\/scratch.itbib4you.be\/index.php\/wp-json\/wp\/v2\/pages\/628\/revisions\/823"}],"wp:attachment":[{"href":"https:\/\/scratch.itbib4you.be\/index.php\/wp-json\/wp\/v2\/media?parent=628"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}