comment utiliser jsl pour tester si une chaîne ne contient que A~Z et 0~9 ?<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />comment utiliser jsl pour tester si une chaîne ne contient que A~Z et 0~9 ?
mes données ne contiendront que A ~ Z et 0 ~ 9, mais lorsque 1 ou quelques bits basculent, il n'y a pas de caractères imprimables.
Merci d'avance!
Re : comment utiliser jsl pour tester si une chaîne contient uniquement A~Z et 0~9 ?Merci! Le regex101 aide à comprendre le code que vous avez partagé.
Re : comment utiliser jsl pour tester si une chaîne contient uniquement A~Z et 0~9 ?Si vous avez seulement besoin de savoir trouvé ou non trouvé, c'est assez simple avec une expression régulière, si vous avez également besoin des correspondances, vous devez boucler sur la chaîne tout en remplaçant les correspondances trouvées. Aussi, si vous avez besoin de tester votre Regex, je suggère regex101
Names Default To Here(1);
original_txt1 = " today I m at FL12, tomorrow I will be at FL 103";
original_txt2 = " today I m at FLb12, tomorrow I will be at FL a123";
// if you only need to know if there is a match combine regex with !IsMissing()
found1 = !Is Missing(Regex(original_txt1, "FL\s?\d+"));
found2 = !Is Missing(Regex(original_txt2, "FL\s?\d+"));
show(found1, found2);
// if you also need the matches loop over the string
matches = {};
While(!Is Missing(rgx_match = Regex(original_txt1, "FL\s?\d+")),
Insert Into(matches, rgx_match);
Substitute Into(original_txt1, rgx_match, "");
);
show(matches);
À ma connaissance, JMP ne peut pas effectuer de recherche regex "globale" avec Regex Match() et j'ai créé un élément de liste de souhaits pour cela Ajouter un indicateur à Regex Match() pour trouver toutes les occurrences de modèle qui ne se chevauchent pas ). Vous pourriez très probablement utiliser Correspondance de modèles propre à JMP faire des tâches comme trouver plusieurs correspondances, mais je n'ai pas pris la peine de l'apprendre. Voici un bon article à ce sujet Correspondance de modèle
Re : comment utiliser jsl pour tester si une chaîne contient uniquement A~Z et 0~9 ?Salut
Je me demande si regex peut être utilisé dans le texte?
Text = " aujourd'hui je suis au FL12, demain je serai au FL102"
J'ai des lignes de texte que je veux savoir si chaque ligne contient FL + anydigit alors oui, ou imprimer le FL + chiffre. Dans ce cas, ce seront FL12 et FL103.
Si ni Regex, pouvez-vous suggérer une autre fonction ?
Re : comment utiliser jsl pour tester si une chaîne contient uniquement A~Z et 0~9 ?Merci @pmroz pour les consignes. Très utile avec certaines données particulièrement sales.
Si quelqu'un d'autre a besoin d'un exemple pratique, essayez ce qui suit :
If(
Regex( :"2nd"n, "^[A-Z]+$" ) == :"2nd"n, "Uppercase",
Regex( :"2nd"n, "^[a-z]+$" ) == :"2nd"n, "Lowercase",
Regex( :"2nd"n, "^[0-9]+$" ) == :"2nd"n, "Numbers",
Regex( :"2nd"n, "^[A-Z0-9]+$" ) == :"2nd"n, "Uppercase and numbers",
Regex( :"2nd"n, "^[a-z0-9]+$" ) == :"2nd"n, "lowercase and numbers",
Regex( :"2nd"n, "^[A-Za-z]+$" ) == :"2nd"n, "No numbers",
Regex( :"2nd"n, "^[A-Za-z0-9]+$" ) == :"2nd"n, "All characters",
Regex( :"2nd"n, "^[A-Za-z0-9]+$" ) != :"2nd"n,
"includes non alphanumeric characters"
)

Re : comment utiliser jsl pour tester si une chaîne contient uniquement A~Z et 0~9 ?Le ^ signifie le début de la chaîne, le + signifie qu'il doit correspondre à au moins un caractère et le $ signifie la fin de la chaîne.
Pour renvoyer un 1 ou un 0, remplacez simplement Oui par 1 et Non par 0 :
Si ( Regex ( : Nom ( "2ème" ) , "^[a-zA-Z0-9]+$" ) == : Nom ( "2ème" ) , 1 , 0 )
Il existe une tonne de sites Web qui expliquent les expressions régulières.
Re : comment utiliser jsl pour tester si une chaîne contient uniquement A~Z et 0~9 ?merci pour votre réponse, PMroz.
A quoi servent ^ et +$ ?
comment puis-je lui faire renvoyer 1 ou 0 pour pouvoir l'utiliser avec un autre algorithme de comparaison?
Re : comment utiliser jsl pour tester si une chaîne contient uniquement A~Z et 0~9 ?Vous pouvez utiliser des expressions régulières pour vérifier cela.Créez une colonne contenant la formule suivante :
Si ( Regex ( : Nom ( "2ème" ) , "^[a-zA-Z0-9]+$" ) == : Nom ( "2ème" ) , "Oui" , "Non" )
La nouvelle colonne aura la valeur "Oui" si elle est purement alphanumérique, "Non" sinon.