Exercice 9.3: compter les espaces Terminé

Consigne

Ecrivez un algorithme qui demande une phrase à l’utilisateur et qui affiche à l’écran le nombre de mots de cette phrase. On suppose que les mots ne sont séparés que par des espaces.

Réponse

Il y a plusieurs méthodes pour effecteur cet tâche:
En général:
- une méthode serai de boucler chaque caractères de la chaîne et d'identifier les espaces. Chaque espace trouvé, ajouterai +1 à une variable compteur.

En javascript:
- les expressions régulières.
- séparer la chaîne de caractère dans un tableau avec "split" puis compter le nombre d'index.

En PHP:
- séparer la chaîne de caractère dans un tableau avec "explode" puis compter le nombre d'index.

Conversion

function javascript() {
    let output = document.querySelector('.response-displayer > .codeblock > pre#javascript');
        output.classList.add('show');
    let nString = document.querySelector('input[name="string"]').value;
    let toDisplay = "";

    // Parse string with spaces and count array index
    toDisplay += "Split: " + ( nString.split(" ").length-1 ) + "<br/>";

    /**
     * \s Find spaces
     * /g Global, find all reccurences of needed
     */
    toDisplay += "Match: " + nString.match(/\s/g).length;

    output.innerHTML = "[JS]: " + toDisplay;
}
function jquery() {
    $('.response-displayer > .codeblock > pre').removeClass('show')
    let $output = $('.response-displayer > .codeblock > pre#jquery').addClass('show')
    let nString = $('input[name="string"]').val();
    let toDisplay = "";

    // Parse string with spaces and count array index
    toDisplay += "Split: " + ( nString.split(" ").length-1 ) + "<br/>";

    /**
     * \s Find spaces
     * /g Global, find all reccurences of needed
     */
    toDisplay += "Match: " + nString.match(/\s/g).length;

    $output.html("[jQuery]: " + toDisplay);
}
<?php
echo "[PHP]: " . ( count( explode(" ", $_POST['string']) ) - 1 );

Choisissez un language:

Entrez les valeurs nécessaires:

Résultat du code

Le résultat s'affichera après l'exécution du code.