[R] StringRegExp - Un Pattern OU avec caractère unique
Posté : lun. 02 juin 2014 09:26
Bonjour à tous,
Je suis nouveau ici et je viens vous demander votre aide.
Je souhaite "créer" un pattern en OU avec caractère unique.
Je m'explique
Le but étant de proposé des lettres: txmcrhevciyu
Avec ces lettres proposés(12 lettres dans mon exemple), je veux trouver les mots faisables de 5 lettres. {5,5}
Donc je vais checker un fichier texte, y récupérer un mot de 5 lettres (par exemple merci).
Avec le code si dessus, correspondance ==> OK (c'est good pour moi)
Mais avec ce code aussi il y a correspondance:
Alors que mon pattern ne contient que un "m" et le string trois "m".
D'après mes désirs, pour qu'il y aurait correspondance il aurait fallu trois "m" dans mon pattern.
Comment faire pour rendre "unique" les caractères de mon pattern ?
NB: Les lettres proposés sont plus nombreuses ou égal aux mots faisables(en terme de lettres/caractères). (j'espère me faire comprendre)
J'avais fais quelque recherche et je pense que les expressions régulière sont une des solutions viables.
Si vous connaissez d'autre moyens/fonction/commande qui serait plus apte(notamment plus rapide) lors de l’exécution, je suis preneur.
Merci d'avance pour votre aide,
Cordialement,
Je suis nouveau ici et je viens vous demander votre aide.
Je souhaite "créer" un pattern en OU avec caractère unique.
Je m'explique
Le but étant de proposé des lettres: txmcrhevciyu
Avec ces lettres proposés(12 lettres dans mon exemple), je veux trouver les mots faisables de 5 lettres. {5,5}
Donc je vais checker un fichier texte, y récupérer un mot de 5 lettres (par exemple merci).
Code : Tout sélectionner
$asResult = StringRegExp("merci", '[tcuméajxrieh\-\ ]{5,5}', 1)
If @error == 0 Then
MsgBox(0, "SRE Exemple 6. Résultat = ", $asResult[0])
EndIfMais avec ce code aussi il y a correspondance:
Code : Tout sélectionner
$asResult = StringRegExp("mmmci", '[tcuméajxrieh\-\ ]{5,5}', 1)
If @error == 0 Then
MsgBox(0, "SRE Exemple 6. Résultat = ", $asResult[0])
EndIfD'après mes désirs, pour qu'il y aurait correspondance il aurait fallu trois "m" dans mon pattern.
Comment faire pour rendre "unique" les caractères de mon pattern ?
NB: Les lettres proposés sont plus nombreuses ou égal aux mots faisables(en terme de lettres/caractères). (j'espère me faire comprendre)
J'avais fais quelque recherche et je pense que les expressions régulière sont une des solutions viables.
Si vous connaissez d'autre moyens/fonction/commande qui serait plus apte(notamment plus rapide) lors de l’exécution, je suis preneur.
Merci d'avance pour votre aide,
Cordialement,