c# - vérifier si la chaîne contient des caractères et le nombre
Comment puis-je vérifier si une chaîne contient des caractères suivants "- " suivi par un nombre?
Ex: thisIsaString-A21 = oui, contient des "- " suivi par un nombre
Ex: thisIsaNotherString-AB21 = non, ne contiennent pas de "- " suivi par un nombre
Qu'avez-vous essayé? puisque vous savez déjà qu'il est appelé regex, de trouver la réponse devrait prendre moins d'une minute.
Que diriez -
Que diriez -
thisIsaString-A21B something else
est-il ok?OriginalL'auteur user1481183 | 2012-06-25
Vous devez vous connecter pour publier un commentaire.
Il peut être fait avec une expression régulière:
La
\d
correspond à un chiffre.Voir en ligne: ideone
\d
ne correspondre à un seul chiffre alors que l'exemple est donné-A21
donc vraisemblablement l'OP nécessite à la fois des chiffresC'est une préoccupation de premier plan si vous voulez extraire le nombre (comme dans votre réponse) mais il n'est pas pertinent si vous voulez juste tester si il y a un match.
en effet, un juste point 🙂
Si s = "C:\\", et de Regex.IsMatch(s, @"- \ "d") est faux
OriginalL'auteur Mark Byers
Si vous voulez extraire l'- [num] peu, puis vous pouvez faire ceci:
Il y a d'autres choses que vous pouvez faire, comme si vous avez besoin d'extraire l'Un[num] peu sur son propre ou tout simplement le nombre:
Ou comme dans ma première suggestion, si vous voulez la 'A21':
Il existe d'autres moyens pour atteindre ces deux dernières, j'aime bien le non-capture d'un groupe
(?<=)
parce que, comme le nom l'indique, il maintient les groupes de sortie propre.Je pense que vous pourriez être en droit de grâce!
OriginalL'auteur Andras Zoltan