Vérification d'une chaine de caractère _ php

Résolu
Bonjour,
je veux tester une chaine de caractère si elle est sous la forme suivante a^b où a et b sont des nombres. C'est-à-dire, un programme près de ça:

$ch=2^3;
function f($ch)
{
  if($ch == ???)
     echo "Forme acceptable !";
  else
     echo "Fome non acceptable !";
}


veuillez me dire comme résoudre ce problème et merci d'avance.

1 réponse

  1. salut
    tu dois convertir chaque chiffre sous sa forme binaire (2 et 3) puis les comparer pour chaque decimale
    quand c'est égal ca prend la valeur 0 (false) inégale la valeur 1 (true)
    exemple

    0101
    0011
    ------
    0110 ( false true true false)

    donc rcherche la valeur binaire de 2 et 3 et compare les, le resultat obtenu sera ce que tu dois mettre après ==
    Un petit merci vaut mieux qu'une grande ignorance !
    Donc si votre sujet est résolu une réponse avec merci c'est pas de refus.
    1
    1. tout d'abord, merci animistab; mais je n'ai pas bien compris votre code!! Je pense que tu n'as pas compris également mon but de ce script.
      En bref, j'essaie de vérifier si $ch est sous forme d'un alphanumérique (ex: 5^4) pour exclure les cas comme c^3 et b^5, etc.
      0
    2. ok le truc c'est que $ch représente le resultat de comparaison des valeur binaire
      donc tu devrais faire
      $a = 2;
      $b=3;
      $ch=$a^$b;
      après tu vérifie si $a et $b sont numériques
      if ( is_numeric($a) && is_numeric($b) )

      sinon recupérer la chaine $ch avec strval($ch) et comparer avec [0-9]*\^[0-9]*
      0
    3. c'est exactement ce que je cherchais. Merci bcp animostab
      0