puis-je comparer en quelque sorte deux nombres dans regex? je veux regex qui est correct pour 10-12, mais incorrect pour 12-10. Je veux dire que 10 doit être inférieur à 12. Je veux le faire en Javascript.regex comparer deux nombres
Répondre
Si l'entrée est toujours de la forme XY, alors pourquoi ne pas utiliser la scission() fonction avec « - » comme séparateur, puis comparer les deux parties avec>
Vous ne pouvez pas comparer les valeurs numériques à l'aide RegExps.
+1 pour vos pouvoirs psychiques dans la détermination de ce que le demandeur voulait vraiment. –
Vous pouvez extraire les nombres en utilisant une regex; vous ne pouvez pas faire la comparaison. Les regex ne sont pas l'outil universel de résolution de problèmes. –
Je pense que je savais ce qu'il voulait dire, mais il m'a fallu aussi longtemps pour formuler une réponse que vous aviez déjà répondu :) – warren
Je n'utiliserais pas regex pour cela. Je diviserais la chaîne sur l'opérateur, puis comparerais les deux nombres résultants basés sur quel opérateur j'ai trouvé (je suppose que 10+12
et 12+10
seraient tous les deux légaux).
Je veux dire que 10 doit être plus petit que 12 –
Regex est utilisé pour faire correspondre les modèles, ne pas comparer les valeurs. Je diviserais simplement la chaîne et utiliserais < or > pour comparer les deux nombres résultants. –
Le problème ici est que vous essayez de rouler deux problèmes en un.
Regex est excellent pour la syntaxe (c'est-à-dire pour la reconnaissance des nombres), mais les déchets pour la sémantique (c'est-à-dire la reconnaissance de la signification). Donc, regex va certainement vous aider à reconnaître x-y
mais vous demandez trop pour ensuite passer à la raison de la relation entre x
et y
.
Comme souvent cité;
Certaines personnes, lorsqu'ils sont confrontés à un problème , pensez « Je sais, je vais utiliser expressions régulières. » Maintenant, ils ont deux problèmes. (JWZ)
Ou plutôt, vous en avez maintenant trois.
- 1. Comparer deux valeurs
- 2. comment comparer les deux date
- 3. Comment comparer deux référentiels git?
- 4. problème de comparer deux tableaux
- 5. Comparer deux XmlNodes en C#
- 6. Comment comparer les nombres flottants dépendants des paramètres régionaux?
- 7. Comparer deux dates - sans heure et seconde
- 8. Comparer deux tableaux contenant des chaînes?
- 9. SQL pour comparer deux horodatages unix?
- 10. Comparer deux chaînes en ignorant certains caractères
- 11. Regex pour faire correspondre les fractions sloppy/nombres mélangés
- 12. Valeur de retour Regex entre deux valeurs?
- 13. Pourquoi ET deux nombres pour obtenir un booléen?
- 14. C# fonction de trouver le delta de deux nombres
- 15. Ajout de deux nombres de 64 bits dans l'assemblage
- 16. Détection de la collision de deux plages de nombres
- 17. comparer deux valeurs datetime de SQL Server avec C#
- 18. Comment puis-je comparer deux fichiers dans un fichier batch?
- 19. comment comparer deux fichiers et extraire la différence?
- 20. comparer deux chaînes avec 'est' - ne fonctionne pas comme prévu
- 21. Comparer deux objets avec une vérification de null
- 22. Comment puis-je comparer deux fichiers en contexte complet?
- 23. sql pour comparer deux chaînes dans MS Access
- 24. Comment puis-je comparer deux révisions de git dans Eclipse?
- 25. Vous cherchez un script PowerShell pour comparer deux dossiers récursivement
- 26. Comment pouvez-vous comparer deux pipelines dans Bash?
- 27. Comment puis-je comparer deux rangées de datatable dans QTP
- 28. Comment puis-je comparer deux variables/colonnes de type NTEXT
- 29. Comparer les valeurs de deux structures en C#
- 30. Comment puis-je comparer deux champs datetime mais ignorer l'année?
Je pense que vous voudrez donner une meilleure description, ou plus d'exemples, de ce dont vous avez besoin. –
[Jeff] (http://www.codinghorror.com/blog/archives/001016.html) répondez à cela !! –
Les expressions régulières sont pour les motifs correspondants, et non pour la vérification des valeurs numériques. Trouvez une chaîne probable avec la regex, puis vérifiez sa valeur numérique quelle que soit la langue de votre hôte (Javascript, peu importe). –