Maison > interface Web > tutoriel HTML > le corps du texte

Rechercher des nombres à l'aide de JavaScript RegExp

WBOY
Libérer: 2023-09-04 19:01:14
avant
1342 Les gens l'ont consulté

使用JavaScript RegExp查找数字

Dans ce tutoriel, nous apprendrons comment trouver des nombres (0-9) à l'aide de JavaScript RegExp. Les valeurs ASCII pour les nombres [0-9] commencent de 48 à 57. Si vous souhaitez imprimer une valeur ASCII d'un nombre, vous devez ajouter 48 au nombre.

Nous représentons les nombres par d dans les expressions régulières. RegExp est un objet qui spécifie un modèle pour effectuer des opérations de recherche et de remplacement ou une validation d'entrée sur des chaînes.

Grammaire

Ce qui suit est la syntaxe du modèle d'expression régulière pour les nombres ou les caractères d -

new RegExp("\d") or simply /\d/ 
Copier après la connexion

/d/ a été introduit dans ES1. Il est entièrement pris en charge par tous les navigateurs. Tels que Chrome, IE, Safari, Opéra, Firefox et Edge.

RegExp a des modificateurs comme g, i, m. "g" est utilisé pour effectuer une correspondance globale, "i" est utilisé pour effectuer une correspondance insensible à la casse et "m" est utilisé pour effectuer une correspondance multi-lignes.

Syntaxe

La syntaxe pour d avec un modificateur comme,

new RegExp("\d", "g") or simply /\d/g
Copier après la connexion

Algorithme

  • Étape 1 - Définissez une chaîne contenant des nombres.
  • Étape 2 - Définissez le modèle RegExp pour les nombres.
  • Étape 3 - Appliquez la correspondance (modèle) à la chaîne définie ci-dessus pour trouver des nombres dans la chaîne.
  • Étape 4 - Afficher les résultats - les chiffres.

Voyons quelques exemples de programmes pour une compréhension plus claire.

Exemple 1

Dans le programme ci-dessous, nous utilisons la correspondance de chaîne (modèle) pour trouver les nombres (d) dans une chaîne donnée. Nous utilisons le mode RegExp comme /d/g. La méthode string match() renvoie un tableau de nombres dans une chaîne.

<!DOCTYPE html>
<html>
<body>
   <h2>RegExp digit finding</h2>
   <p id="text"> </p>
   <p>Digit(s):
   <span id = "result"></span>
   </p>
   <script>
      let text = "200 students are passed out 250 in the class.";
      document.getElementById("text").innerHTML = text;
      let pattern = /\d/g;
      let result = text.match(pattern);
      document.getElementById("result").innerHTML = result;
   </script>
</body>
</html>
Copier après la connexion

Ici, la méthode match() renverra un tableau de nombres s'il y a des nombres dans le texte donné, sinon elle renverra null. Regardons un autre exemple.

Exemple 2

Dans le programme ci-dessous, nous prenons une chaîne sans nombres et essayons de trouver des nombres dans la chaîne. Nous utilisons la correspondance de chaîne (modèle) pour trouver les nombres (d) dans une chaîne donnée. Nous utilisons le mode RegExp comme /d/g. Voyons à quoi ressemble notre sortie.

<!DOCTYPE html>
<html>
<body>
   <h2>Finding digits using RegExp</h2>
   <p id = "result"></p>
   <script>
      let text = "All students are qualified for the test";
      let pattern = /\d/g;
      let result = text.match(pattern);
      if(result == null){
         document.getElementById("result").innerHTML = "No digits found in the text.";
      } else {
         document.getElementById("result").innerHTML = result;
      }
   </script>
</body>
</html>
Copier après la connexion

Exemple 3

Dans le programme ci-dessous, nous recherchons des nombres entre 2 et 7. Pour ce faire, nous utilisons /?/[2-7]/g comme modèle d’expression régulière.

<!DOCTYPE html>
<html>
<body>
   <h2>RegExp digit finding</h2>
   <p id = "text"></p>
   <p>Digit(s):
   <span id = "result"></span>
   </p>
   <script>
      let myStr = "200 students are passed out 250 in the class.";
      document.getElementById("text").innerHTML = myStr;
      let pattern = /[2-7]/g;
      let result = myStr.match(pattern);
      document.getElementById("result").innerHTML = result;
   </script>
</body>
</html>
Copier après la connexion

Nous pouvons utiliser certaines méthodes pour remplacer les caractères numériques. Voyons l'exemple ci-dessous

Exemple 4

Trouver et remplacer des numéros

Dans l'exemple ci-dessous, nous trouvons des nombres et les remplaçons par des espaces. Pour cela, nous utilisons les méthodes split() et join().

<!DOCTYPE html>
<html>
<body>
   <h2>Replace digit character(s)</h2>
   <p id = "text"></p>
   <p>After replacing the digit character(s):
   <span id = "result"></span>
   </p>
   <script>
      let myStr = "200 students are passed out 250 in the class.";
      document.getElementById("text").innerHTML = myStr;
      let pattern = /\d/g;
      let result = myStr.split(/\d/g).join(" ")
      document.getElementById("result").innerHTML = result;
   </script>
</body>
</html>
Copier après la connexion

Exemple 5

Nous rechercherons également un moyen plus simple de remplacer les caractères numériques. Genre,

<!DOCTYPE html>
<html>
<body>
   <h2>Replace digit character</h2>
   <p id = "text"></p>
   <p>After replacing the digit character(s):
   <span id = "result"></span>
   </p>
   <script>
      let myStr = "200 students are passed out 250 in the class.";
      document.getElementById("text").innerHTML = myStr;
      let pattern = /\d/g;
      let result = myStr.replace(/\d/g , " ")
      document.getElementById("result").innerHTML = result;
   </script>
</body>
</html>
Copier après la connexion

Comme nous en avons discuté, g signifie correspondance globale. Il ne s'arrête pas à la première occurrence, mais recherche toutes les occurrences.

Ici, nous pouvons observer qu'il n'y a pas de chiffres dans le texte. Par conséquent, match() renverra null. Espérons que ce didacticiel ait clarifié comment trouver des nombres dans un texte donné.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:tutorialspoint.com
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal