Σε αυτό το παράδειγμα, θα μάθετε να γράφετε ένα πρόγραμμα JavaScript που ελέγχει τον αριθμό των εμφανίσεων ενός χαρακτήρα σε μια συμβολοσειρά.
Για να κατανοήσετε αυτό το παράδειγμα, θα πρέπει να γνωρίζετε τις ακόλουθες ενότητες προγραμματισμού JavaScript:
- Συμβολοσειρά JavaScript
- JavaScript Regex
Εάν ελέγξετε τον αριθμό των εμφανίσεων του " o" στη συμβολοσειρά " school" , το αποτέλεσμα είναι 2 .
Παράδειγμα 1: Ελέγξτε την εμφάνιση ενός χαρακτήρα που χρησιμοποιεί το Loop
// program to check the number of occurrence of a character function countString(str, letter) ( let count = 0; // looping through the items for (let i = 0; i < str.length; i++) ( // check if the character is at that position if (str.charAt(i) == letter) ( count += 1; ) ) return count; ) // take input from the user const string = prompt('Enter a string: '); const letterToCheck = prompt('Enter a letter to check: '); //passing parameters and calling the function const result = countString(string, letterToCheck); // displaying the result console.log(result);
Παραγωγή
Εισαγάγετε μια συμβολοσειρά: σχολείο Εισάγετε ένα γράμμα για έλεγχο: o 2
Στο παραπάνω παράδειγμα, ζητείται από τον χρήστη να εισαγάγει μια συμβολοσειρά και τον χαρακτήρα για έλεγχο.
- Στην αρχή, η τιμή της μεταβλητής μέτρησης είναι 0 .
- Ο
for
βρόχος χρησιμοποιείται για επανάληψη των χορδών. - Η
charAt()
μέθοδος επιστρέφει έναν χαρακτήρα σε ένα καθορισμένο ευρετήριο. - Κατά τη διάρκεια κάθε επανάληψης, εάν ο χαρακτήρας σε αυτό το ευρετήριο ταιριάζει με τον απαιτούμενο χαρακτήρα για αντιστοίχιση, τότε η μεταβλητή μέτρησης αυξάνεται κατά 1 .
Παράδειγμα 2: Ελέγξτε την εμφάνιση ενός χαρακτήρα χρησιμοποιώντας ένα Regex
// program to check the occurrence of a character function countString(str, letter) ( // creating regex const re = new RegExp(letter, 'g'); // matching the pattern const count = str.match(re).length; return count; ) // take input from the user const string = prompt('Enter a string: '); const letterToCheck = prompt('Enter a letter to check: '); //passing parameters and calling the function const result = countString(string, letterToCheck); // displaying the result console.log(result);
Παραγωγή
Εισαγάγετε μια συμβολοσειρά: σχολείο Εισάγετε ένα γράμμα για έλεγχο: o 2
Στο παραπάνω παράδειγμα, χρησιμοποιείται μια κανονική έκφραση (regex) για τον εντοπισμό μιας συμβολοσειράς.
const re = new RegExp(letter, 'g');
δημιουργεί μια κανονική έκφραση.- Η
match()
μέθοδος επιστρέφει έναν πίνακα που περιέχει όλους τους αγώνες. Εδώ,str.match(re);
δίνει ("o", "o"). - Η
length
ιδιότητα δίνει το μήκος ενός στοιχείου πίνακα.