EAN128 ou GS1-128 décoder c#
Voici un exemple de EAN128 ou nouveau nom GS1-128 barcode
01088888931021461712031510W1040190
Je veux décoder ais
(01)08888893102146
(17)120315
(10)W1040190
Mais le code à barres peut être changé comme ce
1712031510W1040190
(17)120315
(10)W1040190
est-il possible façons de le résoudre avec la regex ou quelle est la meilleure façon
Maintenant, je suis en train d'essayer cette
public String AICodes(String pAI)
{
switch (pAI)
{
case "01":
return "01\\d{14}";
case "17":
return "17\\d{6}";
case "10":
return "17\\d{6}10[a-zA-Z0-9|]{1,20}";
}
return String.Empty;
}
private void GS1DataConvert(string pBarcode, string pBarfnc)
{
Match match = Regex.Match(pBarcode, AICodes(pBarfnc));
if (match.Success)
{
MessageBox.Show(match.Groups[0].Value);
}
}
string barfnc = "01";
GS1DataConvert(barcode, barfnc);
barfnc = "17";
GS1DataConvert(barcode, barfnc);
barfnc = "10";
GS1DataConvert(barcode, barfnc);
Vous devez vous connecter pour publier un commentaire.
J'ai trouvé RegEx pour être utile encore. Dans le code suivant, j'utilise une irréguliers tableau de chaîne avec de l'IA, je veux être en mesure de traiter et de leurs propriétés: la
Je utiliser ce tableau pour vérifier l'IA dans l'extrait suivant d'une fonction (avec une boucle à vélo le tableau ci-dessus)
Espère que c'est utile!
Regex n'est pas adapté ou je ne peux pas le faire, mais, voici ma solution. J'espère que ça ll être utile pour qui souffre du même problème.
utilisation
il y a un bug dans le Debock D. la solution.
la (mauvaise) raison est
01:08888893102146;
10:W40190; (correct 10:W1040190; il remplacer TOUS les "10", pas seulement la première)
17:120315;
c'est ma solution