J'ai besoin d'aide pour trouver une expression régulière qui corresponde si une chaîne contient plus d'une occurrence de caractère. J'ai déjà validé la longueur des deux cordes et elles seront toujours égales. Heres ce que je veux dire, par exemple. La chaîne "aab" et "abb". Ces deux doivent correspondre à l'expression régulière car ils ont des caractères répétés, le "aa" dans la première chaîne et le "bb" dans la seconde.Expression régulière pour correspondre à plusieurs occurrences d'un caractère
Répondre
Puisque vous dites « aba » répétition de style ne compte pas, le dos-références devraient faire de cette simple:
(.)\1+
trouverais des séquences de caractères. Essayez-le:
java.util.regex.Pattern.compile("(.)\\1+").matcher("b").find(); // false
java.util.regex.Pattern.compile("(.)\\1+").matcher("bbb").find(); // true
J'ai copié et collé cela et il semble qu'il y ait une erreur de syntaxe – Zerobu
Qu'avez-vous copié et collé? Notez que lorsque vous utilisez la regex dans une chaîne Java, vous devez échapper certains caractères (voir le code Java que j'ai posté, qui fonctionne pour moi ici). – vanza
J'ai copié le code java que vous avez posté – Zerobu
Si vous vérifiez les anagrammes, un algorithme différent pourrait être préférable.
Si vous triez vos chaînes (à la fois l'original et le candidat), la recherche d'anagrammes peut être effectuée avec une comparaison de chaînes.
static final String REGEX_MORE_THAN_ONE_OCCURANCE_OF_B = "([b])\\1{1,}";
static final String REGEX_MORE_THAN_ONE_OCCURANCE_OF_B_AS_PREFIX_TO_A = "(b)\\1+([a])";
- 1. Expression régulière: correspondre le même caractère à plusieurs reprises
- 2. Expression régulière pour correspondre à adresse IP + caractère générique
- 3. expression régulière pour correspondre à des fichiers
- 4. Expression régulière pour correspondre à 12 heures
- 5. expression régulière pour correspondre à un modèle
- 6. Expression régulière pour correspondre à un nom
- 7. Expression régulière pour correspondre à la spécification de dimension
- 8. Expression régulière pour correspondre uniquement aux lettres
- 9. Expression régulière pour correspondre jusqu'à 10 chiffres
- 10. Python expression régulière pour correspondre fichier date.txt
- 11. Expression régulière pour correspondre à tout caractère répété plus de 10 fois
- 12. Expression régulière - à l'exception d'un caractère
- 13. Expression régulière pour correspondre à des adresses e-mail
- 14. Expression régulière pour correspondre à une plage de dates
- 15. Expression régulière pour correspondre à une plage de valeurs décimales
- 16. Expression régulière php pour correspondre à un modèle d'URL spécifique
- 17. PHP expression régulière pour correspondre à une filepath
- 18. Expression régulière pour correspondre à des URL relatives - II
- 19. Expression régulière pour correspondre à des montants en dollars
- 20. Expression régulière pour correspondre à 'R33' et 'r34E'
- 21. Expression régulière pour correspondre à la chaîne commençant par "stop"
- 22. Expression régulière pour correspondre à une chaîne de connexion ssh
- 23. expression régulière pour correspondre à une chaîne de connexion ldap
- 24. expression régulière pour correspondre à cet ensemble de valeurs
- 25. Php expression régulière pour correspondre à une div
- 26. Php expression régulière pour correspondre à une div
- 27. Expression régulière pour correspondre à des séquences d'une ou plusieurs lettres, sauf pour une valeur spécifique
- 28. Expression régulière, faire correspondre les caractères entre {}
- 29. Expression régulière pour correspondre à plusieurs paires paramètre/valeur de chaîne de requête
- 30. expression régulière et d'échappement
Est-ce que 'aba' est admissible? – Lazer
non, ce ne serait pas. J'utilise ceci pour résoudre un problème d'anagramme et aba pourrait être écrit comme baa ou aab. La première chaîne que j'ai donnée, est la chaîne source et la seconde serait celle qui doit être testée et comme vous pouvez le voir, ce ne sont pas des anagrammes – Zerobu
Comme 'perl' n'a rien à voir avec cette question, j'ai enlevé le' perl 'tag. Si vous avez vraiment besoin de l'avoir, alors expliquez le raisonnement pour l'ajout de la balise 'perl'. – BalusC