je une chaîne que je voudrais partager envoudrais partager une chaîne en utilisant un motif regex
var finalQuote = "2012-0001-1";
var quoteNum = "2012-0001";
var revision = "1"
je quelque chose comme ça
var quoteNum = quoteNum.subString(0,9);
var revision = quoteNum.subString(quoteNum.lastIndexOf("-") + 1);
Mais ça ne peut pas être fait utiliser regex plus efficacement? Je rencontre des modèles comme celui-ci qui doivent être divisés en deux.
var finalQuote = "2012-0001-1";
string pat = @"(\d|[A-Z]){4}-\d{4}";
Regex r = new Regex(pat, RegexOptions.IgnoreCase);
Match m = r.Match(text);
var quoteNum = m.Value;
Jusqu'ici j'ai atteint ici. Mais je sens que je n'utilise pas la bonne méthode. Guidez-moi s'il-vous-plaît.
EDIT: Je veux éditer par le modèle. Le fractionnement avec des tirets n'est pas une option car la première partie de la division contient un tiret. à savoir, "2012-0001"
Je ne suis pas un mec C#, mais est-ce qu'il a une fonctionnalité «split» comme Javascript? Alors vous pouvez juste 'finalQuote.split (" - ") [1]' et obtenir votre valeur '0001'. – Shaded
Regex est peu connu pour son efficacité. –
Si vous avez un nombre fixe de caractères, il vaut mieux utiliser votre méthode de sous-chaîne. –