FORUM Tom's Hardware » Programmation » PHP & MySQL & ASP » [php] compter un caractère particulier dans une chaine
 

[php] compter un caractère particulier dans une chaine

Il y a 478 utilisateurs connus et inconnus. Pour voir la liste des connectés connus, cliquez ici
Ajouter une réponse



 Mot :   Pseudo :  
 
Bas de page
Auteur
 Sujet : [php] compter un caractère particulier dans une chaine
 
Je me la pête
Profil : /!\ Docteur - PDG
Plus d'informations

Bonsoir,

J'aimerais compter le nombre de fois où apparaît, dans un texte, un caractère particulier.

Par ex : dans la phrase "j'aime bien le php", combien y a-t-il de "e" ? php me répondrait 3.

Je n'arrive pas à trouver une telle fonction ; existe-t-elle ? Je n'ai trouvé que "strlen" qui donne la longueur total de la chaine de caractères...

Merci de votre aide :)

Profil : Pointeur
Plus d'informations
Je me la pête
Profil : /!\ Docteur - PDG
Plus d'informations

Merci

J'ai continué à chercher de mon côté, et j'ai finalement trouvé ce que je cherchais exactement : substr_count

Je me la pête
Profil : /!\ Docteur - PDG
Plus d'informations

Autre petite question à laquelle je n'ai trouvée qu'une réponse qui ne me convainc qu'à moitié : comment faire pour supprimer dans une chaine de caractères, tous les caractères sauf les lettres a, c, g, t (minuscules et majuscules)

Pour le moment, ça marche comme ça, mais c'est lourd :

Code :
  1. $caractereInterdit = array("b" => "", "B" => "", "d" => "", "D" => "", "e" => "", "E" => "", "f" => "", "F" => "", "h" => "", "H" => "", "i" => "", "I" => "", "j" => "", "J" => "", "k" => "", "K" => "", "l" => "", "L" => "", "m" => "", "M" => "", "n" => "", "N" => "", "o" => "", "O" => "", "p" => "", "P" => "", "q" => "", "Q" => "", "r" => "", "R" => "", "s" => "", "S" => "", "u" => "", "U" => "", "v" => "", "V" => "", "w" => "", "W" => "", "x" => "", "X" => "", "y" => "", "Y" => "", "z" => "", "Z" => "", "0" => "", "1" => "", "2" => "", "3" => "", "4" => "", "5" => "", "6" => "", "7" => "", "8" => "", "9" => "", "?" => "", "," => "", "." => "", ";" => "", "/" => "", ":" => "", "§" => "", "!" => "", "&" => "", "é" => "", "\"" => "", "'" => "", "(" => "", "-" => "", "è" => "", "_" => "", "ç" => "", "à" => "", " )" => "", "=" => "", "°" => "", "+" => "", "$" => "", "£" => "", "ù" => "", "%" => "", "µ" => "", "*" => "", "#" => "", "{" => "", "[" => "", "|" => "", "\\" => "", "^" => "", "@" => "", "]" => "", "}" => "", " " => "" );
  2. $amorce = strtr($_POST['amorce'], $caractereInterdit);



Y a-t-il une méthode plus efficace ?

Merci :jap:

Profil : Pointeur
Plus d'informations

une regex

tu joues avec de l'adn ?

Profil : Pointeur
Plus d'informations

$amorce = preg_replace('/[^acgt]/i', '', $_POST['amorce']);

Je me la pête
Profil : /!\ Docteur - PDG
Plus d'informations

Merci :)

J'avais bien pensé à une une regex, mais j'avais oublié qu'on pouvait choisir les caractères à exclure grâce à un ^ ; je débute, faut m'excuser :D

Sinon, c'est bien un petit jeu avec de l'ADN, puisque que j'essaie de mettre en place un petit script pour faire des calculs de base sur des séquences d'ADN. :jap:


Aller à :
Ajouter une réponse
  FORUM Tom's Hardware » Programmation » PHP & MySQL & ASP » [php] compter un caractère particulier dans une chaine
 

Annonces Google
Publicité
Les téléchargements